This is a old unpublished article from 2013 that I am publishing in 2018. I think the topic is still relevant and I would like to share it with you all just to get your comments on the same. Continue reading
I accidentally deleted a chat conversation with a seller on OLX and it happened with no warning. Aargh! Instead of making this a rant, I will talk about how to avoid such usability mistakes and empathize with the end users.
When you choose to delete something, the system verifies your choice by asking you to validate the decision. The purpose of validation is to ensure that the irreversible loss of information or data should not be of grave consequence for the user.
There are several instances in our daily digital lives that we end up deleting stuff. Emails immediately come to mind. Then, there are chat messages, SMSes, notifications, documents and many more.
On desktop OS, when we press delete after selecting a file, the system asks us to verify our decision to delete. But when we drag a file on a recycle bin, it does not. Why so? Its simple, you are making an effort to delete something by selecting it, dragging it to the destination and then releasing it on the recycle bin icon. You have to be pretty sure you want to delete to be doing that. On the other hand, the delete button can be accidentally pressed too. On top of it, even after you delete, you get one more chance to salvage the deleted item before you Empty out the recycle bin.
Irrespective of whether you verify a user action or not, you can always provide the user an option to revert his/her decision later. Even if the later is limited by time and not a permanent option.
Snack-bar notifications allow us to communicate with the user the action applied as well as an alternative CTA to revert back the decision. The notification style is non obstructive in nature and hence will not leave any unpleasant experience when carrying out daily repetitive tasks.
This brings us to the basic question, when do we validate?
- Can the user invoke delete action accidentally? If yes, verify action.
- Can the action be undone? If no, verify action.
- Is the action repetitive (e.g removal of notifications)?
- If its not critical, do not verify.
- If you are not sure, give use a chance to undo it, but in a non obstructive manner. (like a snack bar notification with an option to ‘Undo’). These alternatives are like a limited time offer. J
So please, next time, have some empathy for the users and save them from the horror of accidental data loss.
Ever wondered how Amazon and Flipkart are able to churn on new App homescreen layouts so fast? The traditional app building approach would have meant having to push a update to users. But that means ensuring all users from your install base are updated to the new version. And also the headache of ensuring that the build is compatible with most of the devices in the mobile device ecosystem. Its a nightmare!
Lets look at a few problem statements. You might have pondered on it at one point.
You want to build an app in which you want the ability to add or remove screens, modify screen layout and/or change UI flow on need basis for the server side and reflecting on the existing app itself.
You have a responsive website and want to engage even more with your users on mobile devices by developing an app. But you don’t have the budget (at least for now) or expertise to develop and full blow mobile app.
For the Android ecosystem, there exists, whats called, Android Webview. Its a system component powered by Chrome that allows Android apps to display web content. It comes pre-installed with the operating system. Webview allows 3rd party apps to show content in an in-app browser or in an app screen that pulls from the web. [sic].
For iOS ecosystem, there is UIWebview & WKWebview. Similarly, for other platforms there are different system components that allow for this hybrid form of integration.
Architecture of a webview
The below diagram compares and explains (quite well, actually) the difference between Native, Hybrid and Web Apps.
courtesy of myShadesOfGray
Capability of webview
Modern webviews are quite powerful, both on Android and iOS platforms. What it means is that it can emulate an App like behavior without being glitchy. This includes behavior like –
Access to device camera, photographs etc
- 60fps scroll support
- And More …
What all this means is that you can replicate an native app like behavior to UI created with HTML inside of your app. Your end user wouldn’t even know that the screen they are interacting with is actually a HTML page.
Webviews have come a long way from developing clunky UI to creating very smooth, performance driven and powerful applications.
Google has been sitting on a very good product for ages. Now that they are making it standalone, its to be seen how this will impact Google Plus. One positive I see is that, users can now share their auto awesome and pic stories to other platforms too.
Better late than never. 🙂
Google Plus as a social network may be dead, but its widely acclaimed photo sharing service may soon have a second coming.
Google will unveil a new photo service at its developer’s conference next month, Bloomberg reports. Photo storage, editing and sharing has long been a standout feature of Google Plus, prompting the company to break out a standalone team last year to focus on releasing photo products to a wider audience. Google Plus’ photo features were essentially borrowed from Picasa, a Google-owned photo suite the company has largely neglected since Google Plus first launched.
A company spokesperson declined to confirm Bloomberg’s report.
Design, as we know it, has evolved over centuries. The design that we experiences in everyday life, be it industrial design or art or engineering has had an evolution that matured it to the current form and experience. Software is a much recent phenomenon, going by the age of the sector itself. Design in software technology has just about recently started to see fundamental principles and philosophies being applied. Apple did skeuomorphism, Microsoft did tiles and Google was furiously iterating with its users to design its software better. Till now, they never clearly defined a philosophy that governed their design. It had always been guidelines for designers and developers to help develop on their platform.
At 2014 I/O, Google introduced what is already been seen on their web applications and mobile OS as their new design philosophy. Material design. Have a look at the video playlist below to understand what Google plans to do with this design philosophy and how it got inspired and what vision it sees brought forth with a philosophy that’s materialistic, metaphorically speaking.
Social Media is a very powerful tool. We all know that. We have all seen and experienced how it has transformed business, politics, entertainment and a lot more. So, if you believe there is something that can be addressed using the social platform, so can you.
In Japan, Yaocho, a local bar chain wanted to address the problem of sleeping drunk. Men and women who had low alcohol tolerance ended up getting so drunk that they use to pass out on the streets. This is quite commonly visible in Japan and it was a problem of responsible drinking. Yaocho wanted its patrons to be more responsible. So, they took to social media in a very risky yet clever campaign. Watch the video, its funny, clever, ingenious and a positive take on social shaming, i think. I am not sure if other societies would be as accommodating to such a concept, but if the intention is genuine and executed with clarity, why not.