Monday, June 5, 2017

How to Boost Happiness and Engagement with Personalized UIs

Personalized UI website example

Personalization, or more specifically, personalized UIs, is one of those hot design trends. It's certainly not a new design concept, but it fits in with the way users navigate content in 2017, like the last piece of a jigsaw.

But why?

UI Design is a balancing act. Designers want to use effective and established design techniques, but they also need to help their brands stand out from the competition by creating something fresh, which can be difficult when designers are relying on tried-and-true techniques.

While there is no cookie-cutter for exceptional design, modern user interface designers simply must find ways to leverage design techniques that are not only known to be highly effective, but impress the user as well.

And the solution to this is not a visual trend that'll be out of fashion before next week, the solution is to design personalized UIs and user experiences that are specifically tailored to an individual user.

So What Exactly is Personalization Then?

When I say personalization I'm talking tailored/curated content, remembering the user's name, and using a conversational tone of voice (to name a few examples).

Personalization helps to deliver relevant content to the user ⏤ it helps "cut the crap" so to speak. When users begin to see content that isn't appealing to them, or doesn't apply to them, they start to lose interest.

And that user is then lost.

Let's take a look at how empathy helps us design user interfaces that "speak" to the user in an engaging, more humanlike way, or design experiences that utilise backend code to deliver relevant content behind the scenes.

How Empathy Breeds Better UX

You might be quite surprised to know that Atticus Finch’s advice to Scout in To Kill a Mockingbird matters in UX/UI design as much as it matters in everyday life:

"You never really understand a person until you consider things from his point of view…until you climb into his skin and walk around in it." ~ Atticus Finch.

Being empathetic is about more than simply imagining what would make the user experience better, it requires you to spend time thinking about what it would be like to be the user, to actually use the interface you're designing.

Empathy requires knowing your audience; your demographic. Envision yourself clicking their mouse and tapping their keyboard buttons ⏤ when you do this, you'll experience their problems, and then you can begin to come up with intuitive solutions to the issues they're/you're facing.

Empathy and UX

Just like we use empathy to improve usability and accessibility, we can use empathy to create personalized UIs that boost user-happiness and user-engagement.

Let's take a look at how.

Remember the User's Name

First year of high-school.

"Hi Stephen!" 👋

She remembered my name.

I don't think I was that interested in her at first. We had only met once, on the first day of high-school, but she remembered my name. Relationships are built on loyalty, trust and mutual interests, but it was this little nugget of effort that initiated the friendship.

Why? Because we made a personal connection.

Computers are not humans, we all know that, but if you have the user's data at hand, why not use it to your full advantage? Remembering little things about the user makes them feel special, and ultimately results in boosted happiness and an increased level of engagement.

Personalized UI with user's name

Speak to the User in a Conversational Tone

"Mr. Brown, what would you like to do today?"

People will respond to this for 3 reasons.

Continue reading %How to Boost Happiness and Engagement with Personalized UIs%


by Stephen Moyers via SitePoint

Feather

Feather

Simple One Pager hosting a set of clean open source icons by Cole Bemis called 'Feather'.

by Rob Hope via One Page Love

Duotone

Duotone

'Duotone' is a One Page HTML template with a beautiful, bold design suited for bands or musicians. The colorful, long-scrolling template features a slick HTML5 music player footer, so users can listen to your tunes while browsing the site. Other features include parallax backgrounds, Soundcloud integration, band member slider, Eventbrite ticketing integration, testimonial slider (could be used for reviews), Embedded Tweets, big image pop-up gallery, contact form and a newsletter sign up box. The colorful design was inspired by Spotify's Duotone style when they rebranded in 2015. Overall a vibrant HTML template with lovely typography - good work!

by Rob Hope via One Page Love

How to Install Yii on Windows or a Mac

Dean Ifrach

Dean Ifrach

Fun One Pager with quirky snippets of copy for marketer Dean Ifrach.

by Rob Hope via One Page Love

Google I/O 2017 Aftermath: What's New for Android Wear?

In this series of tips, we’ve been taking a closer look at some of the new Android features and tools announced at this year’s Google I/O.

In this post, we’re going to be focusing on Android Wear. 

Google has been providing Android Wear UI components via a dedicated Wearable Support Library for a while now, but this is all about to change! 

At this year’s event, Google announced that the various components that make up the Wearable Support Library are going to be deprecated, merged, or migrated into the Android Support Library. In this article, we’ll be taking a look at which components are going to be merged, moved and removed, and how you can start using the Android Support Library’s new Wear module today

We’ll also be looking at some new tools that are designed to make it easier to work with Android Wear’s Complications API.

New Android Wear UI Library 

At this year’s Google I/O, the Android Wear team announced that the bulk of the Wearable Support Library is moving to the Android Support Library. The Wear-specific components will form the basis of a new support-wear module, similar to other modules in the Android Support Library, such as support-recylerview and support-design

According to the Android Wear sessions at Google I/O, we can expect this new Wear module to graduate out of beta at the same time as Android O officially launches.

However, not all components from the Wearable Support Library will be making the move to the Android Support Library. Google also announced that some components from the Wearable Support Library will be:

  • Merged. Components that are applicable to both wearable and handheld devices will be merged into either the Android framework or more generic support modules. Components that are due to be merged include CircledImageView, DelayedConfirmationView, and ActionButton.

  • Deprecated. Google is going to deprecate the Android Wear UI components associated with design patterns that haven’t proven popular with Android Wear users. Specifically, Google will remove the two-dimensional spatial model that allowed Android Wear users to move horizontally and vertically, and will replace it with a vertical LinearLayout. All of the classes associated with the two-dimensional spatial model will be deprecated, including GridViewPager, action buttons, and action layouts.

Although this migration is an ongoing process, Google has already integrated some Android Wear components into version 26.0.0 Beta1 of the Android Support Library.

  • BoxInsetLayout: This is a screen shape-aware FrameLayout that can help you design a single layout that works for both square and round watch faces. When your layout is displayed on a round screen, a BoxInsetLayout will box all its children into an imaginary square in the center of the circular screen. You can specify how your UI elements will be positioned in this center square, using the layout_box attribute. When your app is displayed on a square screen, Android ignores the layout_box attribute and uses a window inset of zero, so your views will be positioned as though they’re inside a regular FrameLayout.

  • SwipeDismissFrameLayoutThis is a layout that you can use to implement custom interactions for your Views and fragments. You’ll generally use SwipeDismissFrameLayout to enable users to dismiss views and fragments by swiping onscreen, essentially replicating the functionality of the Back button found on Android smartphones and tablets.

  • WearableRecyclerViewThis is a Wearable-specific implementation of RecyclerView that helps you design more effective layouts for round displays. The WearableRecyclerView makes more effective use of the curvature of a round screen, and is typically used for implementing curved lists. WearableRecyclerView also gives you the option to use circular scrolling gestures in your app, via its setCircularScrollingGestureEnabled() method.

Adding the New Android Wear Module 

To start using the new Android Wear module, you’ll need to have Android Support Library 26.0.0 Beta1 installed—which leads us on to another Google I/O announcement.

At this year’s event, Google announced that it would be distributing all upcoming versions of the Android Support Library (26.0.0 Beta1 and higher) via the Google Maven repository only.

Downloading the Android Support Library from this repository simply requires you to add the Google Maven Repository to your build.gradle file: 

You can then set up your compile dependencies as usual, so open your wearable module’s build.gradle file and add the Wear library as a project dependency:

To add a component from the Android Wear UI library to your UI, simply open the layout resource file and make sure you use the new, fully-qualified package name. Essentially, this means replacing android.support.wearable.view with android.support.wear.widget. For example, here I’m using the BoxInsetLayout class from the Android Support Library:

To import this class into your Java file, you just need to use the same name, so the old:

Becomes the new:

Easier Integration With the Complications API 

Android Wear users can choose from a huge variety of styles of watch faces, and although the Complications API does give watch faces complete control over how they draw this data, this flexibility can make it difficult to add complications support to your watch faces. 

At this year’s Google I/O, the Android Wear team introduced some additions that should make it easier to work with the Complication API.

ComplicationDrawable

ComplicationDrawable is a new solution that promises to handle all of your complication’s styling and layout for you. 

If you create a ComplicationDrawable but don't set any style parameters, then you'll get a default look, but you can also use the ComplicationDrawable to style every part of your complication, including its background colour, corner radius, and border. 

If your project targets API 24 or higher, then you can define a ComplicationDrawable object by creating a dedicated layout resource file in your project’s /res/drawable folder. 

Open your XML file, and then create a ComplicationDrawable using the following tags:   

Note that attributes defined at the top level apply to both standard and ambient modes, unless you specifically override these attributes in the file’s <ambient> section.

You then need to pass the complication data to your drawable:  

And finally, draw your complication by calling setBounds on your drawable:

TextRenderer

Most complications include some form of text, and TextRenderer is a new class that makes a number of small but powerful adjustments to the way complication text is drawn on the canvas.

You can use TextRenderer to specify the bounds that your complication text has to work with, and TextRenderer will then resize the text or arrange it over several lines, in order to fit this area. In addition, when the screen enters Android Wear’s “always on” ambient mode, TextRenderer adjusts your text by hiding characters and styling that are not suitable for this mode. 

To take advantage of this new class, you need to create a TextRenderer when you initialize your watch face, and then pass it the TextPaint you want to use, which defines style attributes such as the font and text colour:

You need to create a TextRenderer for each field, so you’ll also need to create a TextRenderer for your title text:

When it’s time to draw, you’ll need to set the text on the renderer by calling setText, and then retrieve the text by calling getText

Note that many complications are time-dependent, which is why currentTimeMillis is included in the above code snippet.

Conclusion

In this article, we looked at how to add the new Android Wear UI Library to your project, and how you can start working with a number of components from this library today. We also examined two components that promise to make integrating with Android Wear’s Complications API much easier than it’s previously been.

In the next instalment, we’ll be getting a preview of the up-and-coming features in Android 3.0, by exploring the latest Android Studio Canary build.

In the meantime, check out some of our other tutorials and our video courses on Android app development!

  • Android
    Create a Voice-Controlled Android App
    Ashraff Hathibelagal
  • Android SDK
    Serverless Apps With Firebase Cloud Functions
    Chike Mgbemena
  • Android SDK
    Reactive Programming Operators in RxJava 2
    Jessica Thornsby

by Jessica Thornsby via Envato Tuts+ Code

How to Manage Instagram via the Facebook Inbox

Ever wish you could manage your Instagram and Facebook comments and messages in one place? Have you heard of the Facebook Inbox? Facebook’s Inbox allows you to manage Instagram, Facebook, and Messenger comments and messages in a single location. In this article, you’ll discover how to use the Facebook Inbox to manage your Instagram account. [...]

This post How to Manage Instagram via the Facebook Inbox first appeared on .
- Your Guide to the Social Media Jungle


by Jenn Herman via