How many times a day do you have to login to multiple systems to complete your tasks? How often do you get stuck in disaster email loops where files are lost or you don't have the latest version?

These are all examples of bad workflows which hinders productivity. In this episode of The Rick & Clo Tech Show, Rick tells us how it should be done.

"You can take complex technology, wrap it in a user-friendly interface and do amazing things. And the person doesn't have to be a technologist to use it."

Why you need a custom user interface

For more videos in The Rick & Clo Tech Show series, head over to our YouTube channel


Rick 00:00 I've got a really cracking example of a very very efficient and custom user interface, right, that has been developed by someone online and I saw it this week and I was like, I retweeted it and I think it's absolutely fantastic in a number of ways and I think what it does is it highlights the fact that you can take complex technology and wrap it in a user-friendly interface and do amazing things and the person doesn't have to be a technologist to use it. They just have…they have a need, they want to achieve something efficiently and we can make technology blocks put together and put a nice interface over the top of it.

Chloe 00:45 Mmhm.

Rick 00:46 So that their workflow fits the systems, rather than the other way round where it's, 'I've got to log into X, and then I've got to do this the way that they designed it, and then I've got to go over here, create something, push that to there. Ooh hang on, I've got a spreadsheet with the things I need to upload.'

Chloe 01:01 Mmhm.

Rick 01:02 It's, that's a mess.

Chloe 01:03 Yeah.

Rick 01:04 What you actually want to be doing every day is logging into a system that says 'this is our task, let's get on with it, this is the workflow' and it should be simple and it may have multiple steps with other users involved, but your job should be able to continue.

Chloe 01:20 Mmhm.

Rick 01:21 Right, and a lot of the time people end up in these email, like, disaster loops of files upon files being sent through things with replies and that's not the right version and this one's going to so-and-so and oh hang on, where's that email, I can't find it. It had an attachment on it. And we're developing all these tools to find emails and I'm like, that seems like the wrong way round. Right. Why are we throwing all this information into a, like a single dump?

Rick 01:50 What we should have is a workflow so that each person's responsibility is isolated, visible and simple. Because repetition, again, through using other people's software the way they need you to use it is not the way the world will go. Most, I mean, I'm trying to think who said it most recently but I think Bloomberg and some others in the US have been talking about the fact that enterprise software will no longer exist as a off the, you know, turnkey thing. So you won't buy Office and, you know, some other applications and some other things. All of these things have been Cloudified over the last couple of years, right.

Chloe 02:38 Yep.

Rick 02:39 So what you're now getting to, and you can already do this, is if you want to, you build a workflow that might have a Word element in it i.e. I need to edit some text, but it's not a Word document that's saved on your file. It's just part of this workflow that you're moving through, but you're taking the incredibly powerful rich text editing capabilities of whole application and just embedding it within that workflow. So in the same way as Google Apps are doing, so that you can have a spreadsheet in Google where you can pull data from anywhere, you know. You know, you can do that in Excel online as well. You can have live stock information, you can have direct connections to all of your back-end systems through APIs.

Chloe 03:25 Yep.

Rick 03:26 So this internet standards for user interface that we already have, can be applied in so rich a way now, that you cannot distinguish a web app from an old-school app.

Chloe 03:39 Mmhm.

Rick 03:40 You would've bought. There's so few applications that need to be on your machine now.

Chloe 03:47 Yep.

Rick 03:48 I'm struggling to think of almost any. You know they have an online version of Photoshop which is a fairly intensive application but, the next stage beyond this is none of your compute will happen on your device. You will be streaming the screen to you or you'll be using a web version etcetera. So you might have a webpage that, within that, streams AutoCAD rendering, three-dimensional objects, in a really complex way, but you don't have the graphics processing power to do it, that doesn't matter. You just have that on-demand.

Rick 04:29 Shall we get onto this example of this little device that has everything I like about where you specialise user interfaces. So this is a young man whose grandmother is in a home and she has 6 grandchildren who can't visit her throughout the pandemic.

Chloe 04:46 Mmhm.

Rick 04:47 And so initially he'd given her a mobile phone and she had no idea how to use it, right, absolutely, just disaster, not going to happen. So, you know, how does she remember numbers, what's she going to go through the menus, it doesn't work for her, she's slightly hard of sight. So he's like, okay I'm going to make you a device so you can talk to your kids, right. So what he's done is he thought what kind of interface would she understand? Now she, I think she used to be a telephone operator in the 1930s/40s, right, so she understands the whole take a plug and you plug it into the connection to the person that you're gonna talk to. Right, so what he's got, he's got a box with a cable and there are six names printed out nicely with a little hole next to each and she plugs it into the name of the grandchild she wants to send a message to and then she presses the record button on the right hand side and speaks into the microphone, right. So she says her message. Now, when she lets go of the record, right, it basically then takes that recording and sends it to the Signal API, so you know Signal the messenger, right.

Chloe 06:01 Yep.

Rick 06:02 To the individual that she's connected to on that like board, right. And they get a recorded message so just like you get in WhatsApp when somebody sends you a recorded message or in Signal. So they play that and it's the message from Nana. So they get this message "Hi bla bla bla" you know. Now, here's the kicker. When they reply, so if they reply in that Signal message to that, it comes back to that box, right, and it's a Raspberry Pi inside like we've talked about before, this tiny £20 computer, it's tiny, cheap, right. It comes back to that box and that box has a little heat printer like a receipt printer and it prints out the message for her, she can tear it off and look at it really close with the specs on and go "Ah, there's a message" you know, big big words from her grandchild in return, right.

Rick 06:51 Now, there is so much to like about this, right, because he's using advanced web technologies, he's using a very latest cheap, tiny computer. It's internet connected to Wi-Fi that she doesn't have to think about. It reboots itself automatically, if she accidentally turns it off it just comes back on, right, it's resilient and he's made a user interface that is so specific to her that it's great. And then he's thought, well more people could use this, so he's published the code, he's listed all of the items that you need to buy to make one, and he shared it on the internet as an open source thing, free to use. So now other people can contribute and if there are bugs in the software, people can fix them and submit those back to him and he can fix any bugs and things, so.

Chloe 07:39 Wow.

Rick 07:40 There's so much to like about it. And I think this is what we do, often, is we look at the clients actual needs from a work process perspective, not a "Hey guys, look at this thing we can do, right, like look at this new whizz bang thing and everyone's like yeah that's good and whizz bang but how does that fit into what we're doing?

Chloe 08:02 Yep.

Rick 08:03 Because we see this all the time that it's not capability of software, it's implementation. How do you implement it in a way that is good for your users? So, the classic is not onboarding your users and just handing them some new software and going "Hey guys, we've now got this." And they're like "Err, we used to do this and I used to use this little feature in the software. Where's that gone?" You know. But instead, you get buy-in at the beginning and you talk about their workflows and what they do. Because often, by the way, you find out that people use tools absolutely inappropriately or they work around the thing that you've tried to implement.

Chloe 08:42 Yep.

Rick 08:43 So, classic is: this box must be filled in, right. So they just go dot dot dot, right. Move on, right. Because they haven't got time. The most important piece about that is, they haven't got time. So that's the wrong interface for them.

Chloe 08:58 Yep. Yeah, yeah, yeah.

Rick 09:00 Right, they should have an…

Chloe 09:01 Different way of looking at it.

Rick 09:02 Right, they should have an easier way. So if their workflow is I don't enter that information at that point, I do that later, you know, so I get round it by just doing something. We're making them work harder to do the thing they were doing before.

Chloe 09:14 Mmhm.

Rick 09:15 So the way to make a user interface is to look at how you improve their life as a user. Where are they wasting their time? Where is it frustrating? You know, because sometimes the frustration is, this is slow. This software is slow. It takes seconds before it gets to the next page which means that every time I do 10 entries, I have got to wait 10 minutes within that, you know, because I'm… So sometimes it's optimising that and the interface is fine. So let's just go for speed, let's go, let's make it more efficient, let's make it more background threaded, let's make long working processes go off and do it on their own and then let you know when they're done rather than you sitting there waiting.

Chloe 09:58 Yep.

Rick 09:59 My pet hate for all computers is the bar, right, that goes along waiting, how much percent complete, right. Most of them don't even know how much percent, they're just trying to predict it. So they just move along, waiting to hear back.

Chloe 10:12 Oh really?!

Rick 10:13 Now I'm not joking. Most of those bars that you will see, they're moving on a kind of prediction basis because they don't have enough feedback from the software. The software is just too busy getting on with the, that they're not getting the feedback. The more advanced stuff, yeah you get some feedback. But have you noticed how many of them get all the way to the end and then moves back again and starts going and you're like, well hang on a minute, you just said you were gonna be complete.

Chloe 10:36 You just told me you're ready, yeah.

Rick 10:38 And then it says oh no, it's got 8 more minutes. And you're like ah, for god's sake.

Chloe 10:42 (laughter) Yeah.

Rick 10:42 You know, as a technologist, the amount of my life that has been wasted looking at those bars. You know. Nowadays I don't do it because I run a virtualised computer as well on the machine so if one machine's busy, I'm just off to the other one.

Chloe 10:57 Yep.

Rick 10:58 Because it's just like I haven't got time to wait for that.

Chloe 11:01 No!

Rick 11:02 And then the classic is everybody gets to that moment where Windows suddenly reboots to install updates when you're just trying to start up for the first time to get on a meeting live. And you're like 'Ahhh, Windows is installing updates.' So again, the process there is have a proactive update system that only does it at midnight so you don't have problems with your… You know, it's a little bit of implementation, but it's making people's lives easier.

Chloe 11:25 Yep.

Rick 11:26 So yeah, we have done some fairly interesting user interfaces. I'm working on one at the moment where we needed to add an automated switch to the workflow process. So what we had is a turntable that the user was turning on and clicking the button to start the recording. So you go, turn on, click the button. Right, it's like… But that's not a good way of working. What you actually need to be able to do is to, there's two things. One, we found that touching the camera to start the process is a bad idea 'cos the camera then is shaking at the beginning. So we put in, we tried to improve it initially by just putting in a few seconds before so you press it and then it counts down a few seconds and starts. Which means it stabilizes. But then I thought well, we built it on the iOS platform so why not use other features within that to make it even better. So from, for their workflow, the guys shouldn't really need to touch the phone at all, because what he's actually doing is putting stuff on this turntable and then getting out of shot and he kinda just wants it to go, so why not make Siri do that job? So we've added a Siri capability to it.

Rick 12:44 So you just say "Hey Siri, start the work…" Oh god, no don't do that.

Chloe 12:49 (laughter)

Rick 12:49 He was about to do it on my phone.

Rick 12:50 But you just, therefore…And by the way the implementation of that was really easy because the platform's already there. We're just taking a building block and adding it. So we give this intent which is when you say this phrase it will start this part of the application. So that was great, but then we wanted to automate the turntable to move immediately when it starts the capture.

Chloe 13:16 Mmhm.

Rick 13:17 And to stop it at the end.

Chloe 13:19 Mmhm.

Rick 13:20 So, we had a couple of options. There's the, you can either go down the route of building a custom switch with a Bluetooth connection to it that you then write the software to connect it… complex, really complex. But, you know, it's a good route to go if you want to own the application completely from top to bottom. But, I like to use what's available so we took the home kit system which is basically Apple's home automation system so, just like you have on Android and with other home automation systems that you can, you know, buy off, you get these, in fact I'll show you mine. Here we go. So (finding what he needs) home. Right, so on mine, for example, this is just some favourites, hang on. I'll get it so that you can actually see it. So what you've got is some lights. Now this one down here is actually a test switch, right, which isn't running because it's simulated switch that's on the laptop that's not currently on. But the others, I can just turn lights on and off by tapping it that lights on, that lights off, right. That, you know, it's just instant.

Rick 14:28 Now the beauty is that this system is available to all the applications on the phone so if my application asks for permission to interact with your home kit devices, I can then, from the application, say turn this switch on, turn this switch off. And also, I can receive notifications when someone else switches on and off. So my interface will update to show whether it's on and off if you do it on your phone or on your watch. So, the guy standing there can do two things. One: he can now control the turntable independently just directly from his phone by dragging down the screen and going 'turntable on, turntable off', right. That cost us nothing, no software development or anything. Just buy a plug that's 12 quid from Amazon, plug it in and bond it. That's it.

Chloe 15:13 Wow.

Rick 15:14 The next stage is to write a little bit of code in the application so now, when the photography sequence starts, it will know whether the turntable's on and turn it on if it needs to be. And that's it. And it goes, right.

Chloe 15:26 Wow.

Rick 15:27 And if someone turns the turntable off, it'll go 'hang on a minute, someone's turned the turntable off.' So it knows. Now, that is user interface improvement for them using simple building blocks of a platform that we've already taken advantage of, and like I say, you know, you could use Android in the same way. There are home automation systems within that. Google has a Google has bought Nest which is a home automation software company, effectively. They do thermostats and cameras, all this kind of stuff and security stuff, so yeah. So I enjoy this, finding new technology that has a, what we call, an SDK which is a software development kit or some way that I can get my software to talk to theirs because why would I want to build my own version of something when there's a, you know, multi-billion dollar company who is leading technology development and have some of the finest brains working on it.

Chloe 16:28 Yep.

Rick 16:29 Well, great, thanks. Thanks guys. I'll take that and we'll go and repurpose it for something that you didn't even think of, right. Because they're not thinking I'm gonna use HomeKit for something in a workplace particularly, but it works and it's reliable, so yeah. So custom user interfaces to make your day smoother, quicker. And not even just custom user interface. One of the favourite things I ever did was, took me about 20 minutes, right. So Linda, who works for us who does the accounts, she would receive a file from one of the companies that we work with and it was this comma separated file like you get into Excel, right, and it's these columns of information and in the columns you've got dates, but they were American, right so they're American-formatted dates. And so she wasn't able to import them into our finance software as is, so would have to go through and change them all and then, like, do the input separately and check it again.

Rick 17:43 And I was like "Well how long is this taking you?" And she's like "Well, you know, up to an hour every week." I'm like "Okay, so you're doing this for an hour every week and that is data entry, you are our finance person, you are much more important, you should be doing other things." And she said "Yeah, well, you know, occasionally, you know, when we've had interns I've tried to get them to do this kinda stuff for me. And I'm like "Okay, again, it's still a waste of time."

Rick 18:11 So what I did was I wrote a small script, right, literally like a little text an input, spits an output. Okay, so, and then made a little icon on her desktop that you could drop these files onto. And when you did that, it would spit the file out into this other folder next to it called output, right, so she would go drop it into there and it would go through all the dates, correct them all to English and spit it out to the thing. And it was, what, less than, you know, it's like point something of a second.

Chloe 18:40 Yeah.

Rick 18:41 It's just done, right. So an hour went to a few seconds. And that was the fact that we'd just, we could just spot it. You've got to spot it. Because people do work by default. They don't question, they don't question the method often and they don't question how could I do this in a better way? So that's my, kind of, shtick. I love looking for how can you do something in a better way and when I see something that is literally so easy to do, I can't help myself. I'm like, I'm just like, I just write the script.

Chloe 19:16 On it straight away!

Rick 19:18 I make them an application and just send it to them and go "Look, look, look, look, I could do this so much easier for you." And that's a pleasure because it's improving someone's day, right, and that's what I get off on. I get off on the idea that I hear back that somebody's day is just easier, better, more productive and guess what? The knock-on effect is your company makes more money because your staff are more productive. And actually, you don't have to hire as many people because they're not all just doing this grind work.

Chloe 19:49 These silly tasks, yeah!