Hey! Taking a break from riding to write up some thoughts in case they’re helpful. I’m a new user but long-time cyclist and I made videogames for a long time so I think it makes me pay attention to this stuff.
Anticipating the lockdown in San Francisco I finally bit the bullet on a trainer, picked up the kickr + kickr climb, and just set that up yesterday, plus Zwift. I’m using the Windows version and also have the Android version downloaded.
I’m really excited to use it! I think I’d avoided trainers because I expected them to feel tedious and sort of boring. Zwift really does feel engaging and I’m excited to get using it more. Most of my critical feedback here is about the new user experience - I think it’s just sort of not there right now. Generally my impression is that Zwift has a lot of great core systems built, but pretty limited UX. It feels like it grew from a test app, and nobody got around to building the systems infrastructure to have a really rich NUX and to separate an instance of a ride from the engine itself.
The telltale signs of a deprioritized NUX are always that it’s implemented using existing systems, and when I got on my first ride and saw a lot of tutorial implemented as popup text while I was riding - that’s hard to miss. But I think it’s really a big missed opportunity. I obviously don’t know what your paid conversions look like but I wouldn’t be surprised if a lot of people try and then sort of give up because it’s very hard to wrap your head around all the systems with such limited NUX. The YouTube videos sort of help, but they don’t feel like enough.
While it’s not a small investment, I bet business-wise a rich NUX would be highly impactful to you and maybe one of the best development investments you could make. By “rich NUX” I mean standalone systems implemented just for it - including per-UI-screen help with graying-out + highlights + tooltips, empty / solitary test riding environments for trying things out and diagnosing problems, in-app pervasive tutorial walkthroughs for the various sorts of activities you can do (“walk me through doing a hilly training ride” / “walk me through a workout” / “walk me through riding with my friends” that is an overlay over the app and persists through UI screens, starting a ride, and so on.)
I’m sort of guessing this might take a lot of investment because right now the Windows version feels sort of like it started as a test app and grew from there but never got the love it needs to be a real standalone app. The startup time is very long, and I can’t find any way to quit a ride and start a new one without exiting the app - and if that’s true I bet refactoring things so you can do multiple rides within one run of the app is … probably not a trivial problem right now. But it feels inevitably necessary…
The UI flow has been pretty confusing to get used to. There are different Settings gear-icon buttons in the app, but in different locations and it’s hard to remember which is where. There’s a bunch of stuff I can’t access (like Trainer Difficulty slider) until I’ve begun a ride, and then it’s under a menu accessed via a button at the lower-left of the screen, which brings up a screen with icons clear on the opposite side from the Menu button. And so on.
I’m not saying this just to nitpick UI design, because it compounds this broader problem which is that the app doesn’t ever really explain to me what it is, and what it can do, and most importantly, what it CAN’T do. There’s a ton of rough edges in the simulation space - a lot of things that seem like they should be possible but aren’t. Zwift doesn’t really advertise that very well, because of the lack of NUX, and then the difficult UI layout means I’m never quite sure if something doesn’t exist or whether I’m just not finding it.
On the Android side, the fact that Zwift and Companion are separate apps compounds this problem. There’s no particularly obvious reason not to just implement everything in one app (I assume it was just a development ease decision?), which means when I’m confused about where to find something (or whether it just doesn’t exist) it’s another place to have to go look.
Also, slightly tangential, but my Windows version says I have until 3/24 in my trial, but I tried using the Android version of Zwift to diagnose a problem earlier and it said my trial was expired and wouldn’t let me ride - when logged into the same Zwift account. This is confusing and if it’s not a bug, it could use clearer explanation (why should my trial length differ between platforms?)
Here are some examples of things I personally found confusing and hard to get info on that I think a rich NUX could completely solve:
A friend invited me to an event this morning, and I joined to ride with him and had absolutely no idea what was going on or way to find him. Riding with everyone on the road is overwhelming. There’s a list of “nearby Zwifters” in the UI, taking up a ton of room - and it feels utterly useless because it’s literally everyone with no apparent way to filter down to friends only. Is this true? Maybe there’s a way to do it and I can’t tell, or maybe there’s no way to do it and the app just isn’t clear about that. (Certainly I’d expect to be able to do it.)
Related, I asked him if we could just ride, by ourselves, on a private instance of the course. He’s used it enough to know that’s not possible, but I was baffled - this is an example of something I think any new rider would expect to be possible; it’s one thing not to support it, but the real problem for me was that it wasn’t clear this wasn’t supported - I was convinced there was just some setting I hadn’t found yet.
I don’t really know what ERG mode is, so when I started doing a Training workout, I didn’t realize Zwift was driving my trainer resistance to keep me at a set wattage and that I shouldn’t shift gears. I assumed it was up to me to hit that wattage myself, so the way it was fighting me was extremely confusing and I thought something was broken. Obviously this is just me not understanding how trainers work in general, but if Zwift had more of a tutorial it could have explained this pretty trivially. “OK, you’re doing a workout! First, pick the workout - - then, pick the course - - OK, now start the ride - OK, now shift into a medium gear and leave it there. Zwift will vary the resistance on your trainer to keep you at the right wattage. All you have to do is pedal!”.
I now see (via reading the forums) that there’s no way to ask Zwift to drive my kickr climb to the right elevation during a training workout (ERG mode.) This was super confusing to me. I get this is wahoo-specific and you’re supporting a ton of trainers, but again just some copy text in a tutorial walking me through the various modes would have really helped. (A small note on this that also tripped me up: The “Use ERG mode” choice in the Training UI looks like a radiobutton, but is a checkbox. I had no clue I could uncheck it for a long time. This would be an easy fix - use a traditional checkbox, or at least a square outline instead of a circle.)
I wasn’t sure Zwift was actually changing my kickr climb elevation when I rode without a workout active, and it was very hard to diagnose. First, the UI for a workout isn’t super clear - it shows “No workout selected - Just Ride” - but then if I click on the Training thing, the ERG mode button is still checked. I don’t know if that applies when no workout is selected. I unchecked that when I realized I could, but then just wanted a little test course with big up and downhills to ride quickly to see if it worked. But I couldn’t figure out a way to do this! The routes only show total elevation, they don’t show the elevation profile, so I couldn’t tell which ones had hills immediately at the start. Really I just wanted a small, offline test track for this exact purpose. Instead, I chose a Foothills course in Watopia that looked like it started right at the base of a mountain… and then had to bike 6 miles before any non-0% grades showed up!! All just to verify it was moving my kickr climb correctly. (I’d already verified the Wahoo app could adjust it correctly so I just needed to diagnose the Zwift->Kickr part.)
Hopefully this is useful feedback! Again, I think the guts of Zwift seem really great… like a beautiful bike frame with an awkward saddle, handlebars, and pedals on it, if you’ll forgive the metaphor.
If I started Zwift and it had a more classic videogame sort of Main Menu, and I could set up settings and launch a Ride, and easily quit back to the Main Menu to start another Ride, and one of the Main Menu options was Tutorials, and there were a bunch of guided Tutorials that walked me through the UI and settings and then explained while I was riding what was going on and what I should do, I think it would really level Zwift up massively and draw in a lot of new riders.
The ability to ride in private instances is, I’m guessing, a big project. I think it would also be well worth it. And while “I want to ride with only my friends on this course” is the ideal, there’s also a lot of value in only supporting “I want to ride by myself on this course” - the ability to load up a solo test track that is very short and has some climbs and some downhills would be really powerful. You could use it in tutorials to demonstrate the various features and it would be an easy way for users to make sure their trainer was doing what they expected with Zwift.