EasyRoute Status 1.8.x

So it’s been a rough week or so for EasyRoute.

First, shortly after releasing 1.8, I got a report from a helpful user that it crashed on his iPad. I quickly found the problem and released a fix. Unfortunately, it took 6 days for it to make it through Apple’s review process, which is is one of the longest review times I’ve had for one of the most severe problems I’ve had.

Then, iOS 7.1 was released. While this was not unexpected, it was unannounced and introduced two major problems with EasyRoute. Both problems were easily fixed, and I knew about one of them during the beta period, but, in the past, any problems that EasyRoute has exhibited in beta have disappeared by the time the final version of iOS shipped. Also, developers usually get a GM seed* about a week before the general public.

The GM seed is valuable because I can iron out any last minute problems and make a submission to the App Store ahead of the iOS launch. This time, I got the final version the same day as everyone else, thus anyone who upgraded would suddenly have two major bugs in EasyRoute.

To make matters worse. I had to wait for my aforementioned crash fix to be reviewed before I could submit my iOS 7.1 fixes. I didn’t want to self-reject my crash fix and include the iOS 7.1 fixes and lose my place in the queue. Getting the crash fix out was too important.

For the curious, the two iOS 7.1 problems are gray route lines and a Street View crash. The gray route lines were fixed by Google in their maps library. The StreetView crash occurs inside Apple code but I was able to work around it. I was also able to reproduce the problem with a simple sample app, so I reported the bug to Apple.

The side effect to my workaround is that Street View won’t open and close with a snazzy (and useful, I think) zoom transition to the coordinate being viewed. Hopefully, the problem will be resolved in a future version of iOS and I can restore the zoom transition.

* For those not in the software dev industry. A GM release is a “Golden Master” release. This comes from the days when we shipped software on shiny discs.

Posted in EasyRoute | Tagged | Comments Off

How EasyRoute is always useful to me

I feel compelled to write about this because I take great satisfaction in the fact that I actually use EasyRoute quite regularly almost a year after releasing the first version. In fact, because of all the snow we’ve gotten here in New York, I’ve had to use it quite a bit recently.

You’d think I’d know the distance of every block and every street around my house by now and wouldn’t need a route planner. You’d think with a GPS watch, I could just run down the road till I covered half the day’s distance and then run home to cover the other half. Also, if I stuck with the same routes every week, I would have little need for an app like EasyRoute.

If I’m going out for an easy 3-miler, I have a number of familiar routes to choose from. The same is true for other distances; I have a 6-miler that takes me through a quiet, low-traffic neighborhood and then through a nice park. I prefer it whenever a 6-mile run is required.

I have routine routes around my house for virtually every distance, so how is EasyRoute still useful to me?

Running exclusively outdoors, mother nature often dictates terms and sets limits on where I can go. That 6-miler that takes me through the park? Not going to happen when the paths are blanketed thick with snow. A long run on a bike path? Again snow, but heavy rains can cause flooding and hurricanes like to knock down trees. The obstacles the weather can present can be both surprising and frustrating.

Summer presents challenges as well. I made some new routes over the past year that include as much tree-cover and shade as possible. I find running in extremely hot sunshine harder than bitter cold. You eventually get warmed up on cold days assuming you’ve dressed appropriately, but too much heat will relentlessly beat you down.

Many times it’s not nature’s fault as, inexplicably, the park gates to my favorite running routes are locked with chains and padlocks.

What about when I’m not around my house? I mentioned this on the App Store page, but it is worth mentioning it again. EasyRoute is great for making routes for when you’re away from home. EasyRoute is one less reason to bring a laptop or notebook computer with you since you will probably have your iPhone or iPad anyway. Don’t forget, the satellite view and Street View may help familiarize yourself with the area too.

Additionally, I prefer doing certain types of workouts in particular locations, so I may rule out certain roads or paths. For example, I will usually want to avoid twisty, winding routes if I know I’m going to want to run fast.

One more thing, as a result of my using EasyRoute, I’m always considering ways to improve it. Nothing has been more valuable than the feedback I’ve gotten from my users. It’s been so much fun getting great and constructive comments from people all over the world and using that to help shape EasyRoute into a better program.

So, stay tuned! There’s still a lot in store for EasyRoute and I’m as motivated as ever to keep the improvements coming.

Posted in EasyRoute, Running | Tagged , | Comments Off

A Pneumonia Anniversary

One year ago today, I was diagnosed with pneumonia.

Why mark this anniversary? It ended my first bid to run a marathon pretty early into the training program. After spending many years as a runner with little interest in marathoning, I had somehow come around was very excited about finishing a 26.2-mile race.

I was pretty surprised by the diagnosis since I didn’t really feel that bad and although I figured it meant the end of marathon training, I thought quite a bit about how to salvage it. I did quite a few web searches looking for success stories. After all, I had only begun week 3 of 18 (using a Hal Higdon training plan) if I got back to running within a week or two, could I pick up where I left off?

Recovery took much longer than a week or two. I did not run for 29 days and when I did, it was pretty much a disaster. I felt good at first, but it became very difficult. I held off another two weeks before resuming a semi-regular schedule and the loss of fitness had become apparent.

Missing all those weeks and jumping it when the mileage was getting high would have been pretty reckless despite how badly I wanted to do it. Add in recovery from a pretty major illness such as pneumonia, and resuming the attempt would have been a disaster.

So, I mark the anniversary this year by counting my blessings and celebrating good health. I’m in week 3 and I’m once again very excited about crossing that finish line on May 4th at the Long Island Marathon.

Posted in Running | Comments Off

EasyRoute 1.7 Released

Yesterday, EasyRoute 1.7 was released on the Apple iOS App Store.

First, I went back and changed the way the elevation button behaves. When the elevation view was first under development, I was trying to come up with a good graphic for the button that would indicate what it was for. I made a simple graph icon and it looked good, but I also realized that maybe it should just be the actual elevation graph. So, now it is.

The iPhone version of EasyRoute has a simple arrow button that reveals the map options, I reversed the direction of the arrow to indicate which direction the map options will animate from. This button can be touched or swiped. It’s a minor correction, but it just seems more natural to me.

Finally, I added a zoom animation to Street View. I was experimenting with some new iOS 7 functionality and created the zoom almost by accident. I initially added the zoom while I was experimenting with some new iOS 7 functionality and liked it. I realized that if it zoomed to and from the spot on the map you were viewing, it actually became useful, not just a fancy effect. The zoom effect only appears on iOS 7 (iOS 6 just uses the old transition) but the iOS 7 adoption rate is just insane.

I am planning a another release very soon to address some minor things I noticed over the past week (6 days in review).

Posted in EasyRoute | Comments Off

EasyRoute 1.6 is Available

First, thanks to Apple for getting the release out so fast — I just submitted it last night and here it is already!

I’ve heard that review times can get as high as three weeks right around a major iOS release, so I’m guessing they’re doing everything they can to keep the queue short with this being their crunch time.

Anyway, what did I change? I’m glad you want to know!

First, this update has been “near complete” for a few weeks, but since most of the changes were for iOS 7, I held off on working on a couple of things until the final version was available to me. (It was released to developers after the September 10th event.) When I got it, I made a few final fixes, submitted it to the App Store yesterday and Apple released it today. (Yes, I’m still marveling over that!)

So, on the surface it may seem that EasyRoute simply embraces the iOS 7 look-and-feel, however there are also many under-the-hood changes that better exploit the goodies that the new OS has to offer. Altogether, it’s just a better experience on iOS 7. For example, I made some changes to the map options view to better fit with the new design. It not only looks better on iOS 7, but the cleaner, undecorated style is actually more functional as well.

IOS 6 vs 7

When I first saw iOS back in June, I wasn’t sure the “flat and simple” design was an improvement, but I think these screenshots tell the story pretty well. The iOS 7 version is less distracting and more functional. The plain fact that all the options fit on the screen without scrolling, yet the view is hardly cramped is proof that the design is a major improvement.

Another thing I am impressed with is AirDrop. It works well and is easy to use. Simply bring up the sharing options on a compatible device and you’ll have the option to send a route to someone nearby (also with a compatible device). Just to clarify what I mean by “compatible device”, footnote 3 on that page I linked says, “AirDrop is available on iPhone 5 or later, iPad (4th generation), iPad mini, and iPod touch (5th generation) and requires an iCloud account.”

There are a couple of non-iOS 7 improvements as well…

First, I added a compass to Street View so you know which direction you’re looking in.

Second, I made the route lines a bit thicker and darker. For some reason, these lines were getting thinner and fainter as Google rolled out new versions of the Google Maps SDK for iOS. I beefed them up and restored them so they look like they did when I first released EasyRoute.

I’ve got more things I want to do with iOS 7, but wanted to get the major overhaul done and EasyRoute into the App Store so you could enjoy it when you get iOS 7.

Finally, and I hope this doesn’t inconvenience anyone, but EasyRoute 1.6 drops iOS 5 support. The last graph I saw had its usage share well down into the single-digits, so this change will likely have minimal impact.

Posted in EasyRoute | Comments Off

EasyRoute 1.5 Released

So, I’m a little late with this announcement because I didn’t realize Apple had approved 1.5. I submitted it 8 days ago and haven’t heard anything since then. The Apple developer website was taken down after a security scare, so maybe that had something to do with it.

Anyway, I want to discuss the changes in 1.5…

First, on the iPhone, I moved the map options button off the bottom toolbar and onto the map itself. I did this mostly because I needed room on the toolbar, but I think it works well on the map too.

Second, the map options themselves have been revamped. Before, there were only a few options revealed by curling back the map, now there are many options in their own view. I did this because I needed the flexibility and space for the new features that are available in 1.5. More about the features themselves are on the iTunes page.

Third, the share button has been moved down to the main toolbar. Having it up on top was a little bit unconventional and not completely supported by iOS the way I was doing it. It worked for iOS 6, but didn’t quite hold together when looking at it on iOS 7. (Yes, I’m getting EasyRoute for iOS 7.)

Finally, on the subject of iOS 7: as you can see, Apple is going for a simpler and cleaner look. I applied that thinking to the elevation graph and got rid of the shiny embossed metal look in favor of a simpler, but more colorful style. I liked it, so I left it that way.

Unless a bug pops up that I feel I have to fix, I don’t expect another release until after iOS 7 ships. In addition to iOS 7 enhancements, I have a few more features planned too.

Posted in EasyRoute | Comments Off

EasyRoute 1.4 Released

I’m really happy to announce that EasyRoute 1.4 has hit the App Store!

I’m particularly excited about this release because I feel it is one of the most solid EasyRoute releases so far. I added one major new feature, but made lots of little fixes and enhancements that I think just make the overall experience with the app better.

GPX Import and Export

I said I was going to prioritize features based on user feedback and this feature came directly from a user request. I see two major uses for this feature:

  1. Open a route created with EasyRoute in other apps.
  2. Share routes via e-mail. The recipient can open the GPX file with EasyRoute or a multitude of other mobile, desktop and web apps.

This is why, if you think EasyRoute could be better, you need to contact me. I’m listening.

Tweaked Add Route Process

It just works better and you may not even notice the difference, but I feel like explaining it.

Previously, on the iPhone, when you pressed the Add Route button, it brought up a view with a Cancel and Done button. This was different than the buttons you got when you were editing an existing a route, but I set it up that way because I thought it would be simpler. The route didn’t fully exist until you were finished and hit the Done button, making it easily cancelled. The problem was, it was a little too easily cancelled. I did not get any user complaints about this, but on a few occasions, I personally accidentally hit the cancel button and lost a route I was making.

I patched this by adding a confirmation message, but I don’t like message box-style user interaction and having an explicit save isn’t really preferred on iOS anyway. So now, regardless of how you conclude adding a new route, EasyRoute will do the right thing.

Out and Back and Reverse Crash

I have about a half-dozen people on my TestFlight team look at EasyRoute before it goes to the App Store and I comb through it myself. Even after it is submitted, testing continues in case a bug is discovered during the few days while it is in Apple’s review queue.

So, I was very surprised to discover that these functions caused crashes. The fix was really simple, but still very embarrassing for me. I received no complaints about it, but I still apologize to anyone who may have encountered this problem.

Distance Marker Improvement

This version of EasyRoute shows fewer distance markers in proportion to the map zoom level, so you won’t have dense line of them obscuring your route if you make a long route.

Selection Indicator on iPad Fixed

Since the route list and the map can both be visible at the same time on the iPad, I now ensure the current route is highlighted in the list. This was always the intent, but did not work in all cases previously

No Town Names

Fixes a problem where town names might not appear on the main list.

Route Info

The route info button is now visible even when not editing a route. Now you can view and change the route’s name and notes without having to enter editing mode.

There are still lots of great features coming to EasyRoute. Stay tuned!

Posted in EasyRoute | Tagged | Comments Off

Rolling right along: EasyRoute 1.3 Released!

There is only one new feature, but it is a personal favorite of mine: Street View!

Tap-and-hold on a road to bring up Street View. It’s that simple.

This is something I’ve been looking forward to doing. Before EasyRoute, using web-based route planners, I have had to keep a regular Google Map page open also so I could look around. If I was planning to run along a busy street, is there a sufficient sidewalk or shoulder I can use to avoid being too close to the traffic? Now, I can just bring it up and check it right in EasyRoute.

I’ve already got a major new feature nearly complete for the next release. Stay Tuned…!

Posted in EasyRoute | Tagged | Comments Off

EasyRoute 1.2 Released!

Quick mention: it’s a good thing I wasn’t going anyway, because WWDC sold out in two or three minutes depending on your source. I had someone inform me at 1:03 EDT, so it definitely was not more than three minutes.

Onto the bigger story of the day (well, at least on this site). EasyRoute 1.2 was released after 7 days in review.

I call this the “little things” release. I concentrated on the big things for 1.0 and 1.1 and saved a bunch of “little things” for 1.2. I did this just in case any of these little things turned into big things. I didn’t want to hold up the other releases with little things.

So, here’s what we have:

1. You can now start the route at the current location dot. I was trying to think of a good way to handle this because that dot was intercepting the touches but, as usual, the simplest way turned out to be the best way. Just tap on the dot to start or extend the route there.

2. When the map is rotated, a compass is now shown. Tap the compass to orient the map to the north again. I went and made a compass myself and right about the same time I submitted it to Apple, the Google Maps SDK added their own compass. Oh well. I think I like mine better anyway.

3. Fixes a minor drawing problem regarding the current location marker.

Finally, while I was waiting for 1.2 to be reviewed, work on 1.3 began. It went quickly, it’s already feature-complete and is going to be released to my testers tonight.

Posted in EasyRoute | Tagged , | Comments Off

Thoughts on WWDC 2013

Nope, I’m not going. I’d like to, but for a variety of reasons, I can’t.

I just wanted to point out a few things I think Apple did correctly this year.

First, pre-announcing the event is the right way to go. Granted, it’s only a day in advance, but it shows they heard the cries of developers that got shut out last year. The usual Apple theatrics — the rumors, the speculation, the leaks, the invitations, shutting down the Apple Store — all that is fine and good for product announcements, but they need to be straight and fair with their developers. Even Steve Ballmer understands how important developers are.

Second, WWDC has turned into a big media event for Apple because they usually use it announce a new major product. This year, as Ars Technica pointed out, Tim Cook may have deflated WWDC a bit by mentioning there would be no new products until later this year. If this was the intent, it was a good move. Last year, I heard there were attendees who were only there only for the keynote and had no interest in developer talks. Once again, it’s good if Apple is trying to emphasize the “D” in WWDC.

Third, they are making videos of the sessions available during the conference. Once again, this is something Microsoft is good at and is important to developers. Some of the best things I’ve learned about Xcode and iOS development have come from past WWDC videos.

One more interesting thing. If you didn’t have a a developer account at the time of today’s announcement, you’re out of luck. Last year was the first year they required paid developer accounts in order to get WWDC tickets and I’m sure there was a spike in registrations in the 2-hour span tickets were on-sale. In fact, I was all set to go last year, but didn’t have a paid account that morning and by the time I got my account upgraded, it was too late. I was in the midst of developing EasyRoute, but was holding out on the upgrade to a paid account until I actually needed it.

So, no WWDC 2012 or 2013 for me. I’ll keep my fingers crossed for 2014.

Posted in Apple | 1 Comment