User Experience

Hello

I'm trying out wyBuild/wyUpdate and it looks pretty good so far. Very nice job overall. Lots of good capabilities for a fair and reasonable price.

Some things have caught my attention, however. Mostly I'm looking for a little more control over the user experience.

My first impression is that the user is going to become confused right away when he sees the UAC prompt showing a company he's never heard of (Program Name: 'wyUpdate'/Verified Publisher: 'wyDay'). I'd like to be able to include my own code signing cert there (or even none at all).

I'd also like to perform the update completely silently, without requiring any user intervention whatsoever--to not even be prompted that updates are available ("Update will be installed on next restart"). Without requiring him to click the .NET AutoUpdater control and select "Install update now."

I'd like to provide my own UI for these things; my business rules are a little bit different than most folks' are. Some deeper customization is needed, at least in my case.

Problem: The wyUpdate app flashes through and then exits very quickly after performing the update. This leaves a very unsettling feeling for the user. The screen should pause when it's done so the user can inspect the update process and click to exit and restart my app. Is there a way to accomplish this?

Also, is there a way to have wyUpdate automatically close my app, without forcing the user to do so?

Basically I'd like to make the user experience a bit more fluid and smooth. Maybe there's a way to do these and I'm just missing it.

Some guidance would be appreciated.

Thanks,Jeff Bowman

_____p.s. I'm noticing some broken English here and there throughout the app and this website. Was I mistaken in my earlier impression that this is a Made in America product? (Very important these days.)

My first impression is that the user is going to become confused right away when he sees the UAC prompt showing a company he's never heard of (Program Name: 'wyUpdate'/Verified Publisher: 'wyDay'). I'd like to be able to include my own code signing cert there (or even none at all).

You can compile your own version of wyUpdate and sign it with your own code signing cert. See: How to make a custom version of wyUpdate.

I'd also like to perform the update completely silently, without requiring any user intervention whatsoever--to not even be prompted that updates are available ("Update will be installed on next restart"). Without requiring him to click the .NET AutoUpdater control and select "Install update now."

When the AutomaticUpdater is at that stage you can call the InstallNow() function programmatically. See: AutomaticUpdater Members.

I'd like to provide my own UI for these things; my business rules are a little bit different than most folks' are. Some deeper customization is needed, at least in my case.

wyUpdate and the AutomaticUpdater are both open source. You can completely modify the UI if you want.

Problem: The wyUpdate app flashes through and then exits very quickly after performing the update. This leaves a very unsettling feeling for the user. The screen should pause when it's done so the user can inspect the update process and click to exit and restart my app. Is there a way to accomplish this?

Your app should start after the update -- thus wyUpdate should do its job, get out of the way, and push your app to the forefront of the user's attention.

That being said, if you want wyUpdate to stick around then you're certainly free to modify it to do that. I wouldn't recommend it.

Also, is there a way to have wyUpdate automatically close my app, without forcing the user to do so?

Yes, within your app, make sure you programmatically close all processes. But wyUpdate will never add "kill all running processes" functionality. This is a bad user experience.

I'm noticing some broken English here and there throughout the app and this website. Was I mistaken in my earlier impression that this is a Made in America product? (Very important these days.)

Our products are made in America. I guess the English is broken in America too 😉. But seriously, where are the grammar problems? We'll fix them.

See? Things just keep getting better and better

Very good answers, all. I can't see a thing wrong with this tool.

I'll let you know as I come across the grammar issues I noticed (I already forgot where exactly). I'd like to do so privately, if you don't mind. Normally correcting someone's spelling/grammer is considered bad manners.

> I guess the English is broken in America too

You've got THAT right!

Thanks,Jeff BowmanFairbanks, Alaska

Hi Wyatt

> Your app should start after the update -- thus wyUpdate should do it's [sic] job,> get out of the way, and push your app to the forefront of the user's attention.

I've been thinking about this and I find I must respectfully disagree.

The way wyUpdate works now, the user sees a sequence of quick flashes on the screen as it does its work. It then immediately disappears and the patched app restarts.

It feels very clunky and not at all fluid. If wyUpdate is going to show at all, it should pause at the end and provide a summary of what's just taken place. Pausing before the Finish button click would be more courteous.

It almost leaves the user with the unsettling impression that something just broke; that he's somehow lost control of his system.

IMHO,Jeff Bowman

We can disagree and still be friends

But I've spent a couple hours now trying to dissect the wyUpdate code and figure out how to get it to pause at the Finish panel.

Can you provide some architecture guidance?

Thanks,Jeff Bowman

If you're using wyUpdate as a standalone updater (that is, you're not using the AutomaticUpdater), then the default behavior of wyUpdate is to show the finish screen and let the user manually close it. If you're using the AutomaticUpdater then an event is raised when the update has completely successfully. So you can just show a form with all the update changes (or whatever you want to show) when your app starts.

In either case the end-user knows that all the commotion was the updating happening. Is that helpful?