Thursday, June 30, 2016

How Laughing Chewbacca Mask Lady touched hearts worldwide and brought social media power back into the hands of those who evoke emotion

What Brands and Social Media Marketer Can Learn from the Chewbacca Mom Video

Power in the social media world is held by those who can hook mass attention and change individual’s PERSONAL preference. That’s right, a messiah of followers can preach thoughts and ideas that their followers talk about. That’s what a brand wants: to be talked about. Delving into deeper strategic social media, these brands sometimes want a specific targeted audience of potential consumers or mass followers depending on their message, product or service they are selling.

Social Media is not just a platform to showcase your selfies. Social Media is a marketing platform where businesses can talk to consumers, businesses can talk to businesses, and consumers can talk to consumers.

The end goal is the SALE. Selling your brand image, selling your lifestyle, selling your product, selling your knowledge, selling your service. Whatever it is you want to sell at the moment, big corporate companies and small niche brands are trying to figure out the best way to market themselves through the ever growing population on Instagram, Twitter, Facebook, Pinterest, Snapchat, LinkedIn, Periscope.

Whether it is authentic or fabricated, the effect of emotions on the human mind reflects the number of hits on viral videos and ad campaigns. Love, Terror, Awe, Shock, Amazement, Laughter, Disgust, Anger. What do you normally click on when you scroll through friends Facebook pages….Baby Animal videos, stunt videos, funny videos, scary videos?

It’s interesting that the more and more we become physically detached from people, sitting in front of our screens (as I am doing right now), or using the power of touch to type each other Whatsapp messages, Facebook messages and emails, the fact is the core need for emotion remains. Through all this technology, we remain human. Human behavioural patterns, traditions and values may change but core emotions stand integral to most humans’ functionality and basic instincts.

So let’s take a look at this video below. A woman buys a Chewbacca masks, puts it on and laughs at herself. She’s not only in awe of herself, she thinks it’s amazing, fun, and the sincerity of her laughter makes us the viewer feel that it has touched her inner child. How does she do that? Who taught her how to light the video correctly, laugh like that, did she have lines? Of course not. She was being human and that human reaction captured the hearts (and video and the 6,283,233 video clicks). She captured more than four million people in the world in a four minute video. This capacity to touch humans emotionally got her invited to huge entertainment platforms like the James Corden show and Good Morning America.




There is hardly anyone in the United State who hasn’t seen or heard about the “Chewbacca Mom”, such a simple video that has taken the Internet by storm and has instantly made her what brands and marketers term as “Influencer”. It’s impossible to launch content without an influencer on marketing strategy these days.

Big brands have immediately tied themselves to this viral sensation. So, the question is what brands and marketers can learn from this video? And the million-dollar question on “How can brands or marketers increase the discernibility of their content?

Here are the lessons that brands and marketers learn from this “Chewbacca Mom” video.

1. Be genuine and truthful. Don’t fake realness

The power of genuine and truthful in influencer marketing in action creates an emotional connection with your audience. Speak from your heart; spend more time creating meaningful sincere connections with influencers or ambassadors and people. Unintentional as it was from the video, the moment speaks the truth. Share your brand story within a truthful way, as consumers don’t want brands to tell them what to buy but people whom they trust. It is a delicate line to walk, as you don’t want to be come across as insincere and fake.

2. Positive message

Be positive and try to build your campaign on honest emotions. Subsequently, it will help foster similar grasp of your brand. The video proven the tremendous power of social media and people like to see heartwarming messages and sincerity from others. Some campaigns are heartbreaking and others are hilarious. Even when it’s heartbreaking, the message behind the campaign is with positive emotions resonate. Brands and Marketers can draw an important lesson from these examples of viral media hits.

3. Keep it simple

One aspect of this viral video is such a success, it’s because it draws people’s attention and their affection. It’s simple and a joyous moment that captured the heart of millions. Hence, the story does not have to be complicated; the key to achieving success is often built emotional connection with your audience with simple positive images.

There are only so many times you can put on a Chewbacca mask and laugh for the cameras and cashing on viral stardom. You need to create a brand of your own right, tell your story, built a personal brand and most importantly, brands and marketers need to have fun when conveying their story on social media.

Want to capture your audience using social media? Find your own Chewbacca mask.

For more information about digital marketing, please free to contact Jessica Patterson.

JPR MEDIA - PR Agency Central London specialising in London Fashion PR and Food Public Relations.

by Guest Author via Digital Information World

“I co-created UX advice column UX Agony Aunt” : Ask Me Anything

In the words of a true UX Agony Aunt – “sometimes we all need an extra bit of help” – and Ashlea McKay is just the person to put up her hand in support. To add further quotes into the mix, our friends at Optimal Workshop describe the aforementioned  UX Agony Aunt as “an opinionated, charismatic, and quick-firing advice columnist who keeps on hand a bag of UX tips, tools, and tricks to help you get unstuck”.

We’ve been fans of Ash’s ever since she crossed the threshold of our community registration page exactly 2 years ago. Her positive yet pragmatic approach to problems, her strong design pedigree and her willingness to go the extra mile to help others makes her the perfect candidate for an Ask me Anything session.

The Details

Meet Ashlea McKay

Ashlea Mckay

Ashlea McKay is a UX designer, researcher and writer with a background in industrial design. She loves conducting user research because she learns something new every day and enjoys understanding what makes users tick. Ashlea is also passionate about mentoring and is heavily involved in the UX community at large.

She regularly writes articles for well-known UX publications and is the co-founder and voice behind UX advice column, UX Agony Aunt. In her spare time, Ashlea enjoys colouring in, collecting shoes and building LEGO. 

 

How to Ask Your Questions

If you can’t make the live session but have questions, we’d love to collect them ahead of time and we’ll ask Heather on your behalf. You can submit your questions here. We’ll publish the responses (along with the full transcript) in the days following the session.

How does Ask Me Anything work?

These sessions run for approximately an hour and best of all, they don’t cost a cent. We run them in our dedicated public Slack channel. That means that there is no audio or video, but a full transcript will be posted up on here in the days following the session. If you’re not familiar with Slack, you’ll need to request an invite to our channel the first time only – from then on you’re part of the family and you’ll have automatic access to new sessions.

The post “I co-created UX advice column UX Agony Aunt” : Ask Me Anything appeared first on UX Mastery.


by Sarah Hawk via UX Mastery

Integration and Comparison for ES6

If you’re still writing JavaScript using ES5 (also known as ECMAScript 5) and desire to author in ES6 (ES2015) fear not. We’ll look over some logical ways to start using this new syntactical sugar in your own work starting immediately. We’ll discuss and examine approaches to integrate features such as let and const plus compare var versus let and finally understand when to use the spread operator. So without further ado let’s get started.


A Brief Review

For those that have never written in ES6 please keep reading otherwise feel free to skip over this portion and begin with the next section covering terminology. For those sticking around it’s time for a quick review on how to author ECMAScript 2015.

In order to author in ES6 as of this writing you’ll need a tool known to developers as Babel; a JavaScript compiler. This is just a fancy tool that consumes the originally authored code and rewrites it into code the browser understands. You can read the other part of this series on this very website where I share helpful advice on Preparing for ES6.


Terminology

It wouldn’t be prudent if we didn’t go over some terminology before we begin so let’s learn a few definitions to help us better understand.

let

In ES2015 let is the new var and what’s known as a block-scoped binding construct. The keyword let as well as const are also both part of the “Declarations and the Variable Statement” section of the specification

The let statement declares a local block scope variable, optionally initializing it to a value. It allows for declaring variables that are limited in scope to the block, statement, or expression used within. This is unlike the var keyword that defines a variable globally or locally to an entire function regardless of block scope. It can also signal that the variable may be reassigned in cases such as a loop counter, or a value switch in an algorithm.

const

The keyword const states the identifier can’t be reassigned unlike how let and var allow for. This keyword is single-assignment whereas let can be defined multiple times. Those familiar authoring in PHP will already understand this type of identifier. A const object can have properties mutated and signals that the identifier won’t be reassigned. Static restrictions for const prevent use before assignment.

The spread operator (…)

The spread operator is a way to pass multiple arguments instead of single values as we’ve typically been used to. This allows an expression to be expanded in places where multiple arguments for functions or multiple elements (for array literals) or multiple variables (for destructuring assignment) are expected (source: MDN).


Examples

Now that you’re up to speed it’s time to use ES2015, but how do we know when using let vs var is sensible and when it’s appropriate? How should we decide when to use const or the spread operator?

How to use let

Use let when you need to reassign a variable or protect the use of a value in a blocked scope. A use case for let tends to be for loops or mathematical algorithms. The keyword let also signals that the variable will be used only in the block it’s defined in; no hoisting. If you need to reassign let make sure not to use the let keyword and use the assignment already given. For example…

Incorrect


let window_width = window.innerWidth;
let window_width = 'string';

Correct


let window_width = window.innerWidth;
window_width = 'string';

The keyword let can also be used within a functions block scope.


function windowSize() {
  let window_width = window.innerWidth;
}

windowSize();

window.onresize = function() {
  windowSize();
};

console.log(window_width) // reports undefined

In the example we define window_width only within the scope it’s used in order to determine window width on the window resize event. Keep in mind window_width is never accessible outside the windowSize function.

How to use const

Constants are block-scoped, much like variables defined using the let keyword. The value of a constant cannot change through re-assignment, and it can’t be redeclared. Think of “constant” as meaning a “one-time assignment.”


const window_width = window.innerWidth;

If we try to reassign the identifier we’ll get a warning in the console:


const window_width = window.screen.width;
window_width = 'string'; // Uncaught TypeError: Assignment to constant variable.

You’ll likely use a constant when a value is unlikely to change throughout your application in such cases like mathematical values.


const pi = Math.PI;

Here we’ve created a read-only reference meaning we can only read the value not reassign it as previously stated.

We can get around the immutable rule by defining our values within an object literal. Global configurations are a great use case for const when used in the following fashion:


const config = {
    url: window.location.origin,
    width: window.screen.width,
    path: window.location.pathname
};

// The object's properties can be mutated so we can reassign values.
config.url = "https://codepen.io";

console.log(config)

Object {url: "https://codepen.io", width: 1440, path: "/index.html"} // url key reports reassigned value

Here we’ve created a read-only reference meaning we can only read the value (config) not reassign it as previously stated. Essentially the config identifier is the constant being defined and cannot be overridden, but we still have the ability to mutate properties contained within as shown.

How to use (…) : the spread operator

The spread operator adds more capability to the once dull context of accepted arguments we’ve previously encountered in ES5. Spread operators can accept an array of arguments; for example:


function spreadReporter(...values) {
  let object = [...values];
  return object[0].length;
}

var items = ['one', 'two', 'three'];

console.log(spreadReporter(items)); // reports the numerical value 3

These arguments consisting of multiple values can be anything you desire. It can be an identifier with values using an object literal or an array of values.

You could use the spread operator in a e-commerce situation based on events such as adding items to a category or shopping cart.


let dairy = [];
let store = {
  add: function(category, ...items) {
    category.push(...items);
  }
};

store.add(dairy, 'milk', 'sour cream');
store.add(dairy, 'ice cream', 'yogurt', 'cheese');
console.log(dairy);

// outputs ["milk", "sour cream", "ice cream", "yogurt", "cheese"]

Events could also be a great use case to determine the particular type taking place whether it be a click, touch or some other type of gesture variant. I’ll leave that up to you all as a challenge so feel free to post a solution in the comments below.


Conclusion

As with everything in development there can be many ways to skin a cat. These examples provided for discussion are merely suggestions and demos showcasing the power of the new features in ES6. If you have any other samples, suggestions that outline the features mentioned above please let us know in the comments. Happy coding everyone and enjoy your new ES6 knowledge. Go forth, share, discuss and be awesome.

References

The post Integration and Comparison for ES6 appeared first on Web Design Weekly.


by Dennis Gaebel via Web Design Weekly

JavaScript Design Patterns: The Singleton

Among languages used in widespread production, JavaScript is by far the most quickly evolving, looking less like its earliest iterations and more like Python with every new spec put forth by ECMA International. While the changes have their fair share of detractors, the new JavaScript does succeed in making code easier to read and reason about, easier to write in a way that adheres to software engineering best practices (particularly the concepts of modularity and SOLID principles), and easier to assemble into canonical software design patterns. Let's dig into that last point by examining how the best way to implement a singleton in JavaScript has evolved with the rise of ES6.

What Is ES6

ES6 (aka ES2015) is the latest specification of the JavaScript language, and the first major update to the language since ES5 was standardized in 2009. Browser support for ES6 is still incomplete, however, ES6 code can easily be transpiled into ES5 code using a tool such as Babel. ES6 gives JavaScript a ton of new features, including a superior syntax for classes, and new keywords for variable declarations. You can learn more about it by perusing Sitepoint articles on the subject.

What Is a Singleton

alt text

In case you're unfamiliar with the singleton pattern, it is, at its core, a design pattern that restricts the instantiation of a class to one object. Usually, the goal is to manage global application state. Some examples I have seen or written myself in real software development life include using a singleton as the source of config settings for a web app, on the client-side for anything initiated with an API key (you usually don't want to risk sending multiple analytics tracking calls, for example), and to store data in memory in a client-side web application (e.g. stores in Flux).

A singleton should be immutable by consuming code, and there should be no danger of instantiating more than one of them.

Note: there are scenarios when singletons might be bad, and arguments that they are, in fact, always bad. For that discussion, you can check out this helpful article on the subject.

The Old Way of Creating a Singleton in JavaScript

The old way of writing a singleton in JavaScript involves leveraging closures and immediately-invoked function expressions . Here is how we might write a (very simple) store for a hypothetical Flux implementation the old way:

Continue reading %JavaScript Design Patterns: The Singleton%


by Samier Saeed via SitePoint

This week's JavaScript news, issue 290

This week's JavaScript news
Read this e-mail on the Web
JavaScript Weekly
Issue 290 — June 30, 2016
Redux is an app state container, commonly (but not always) used alongside React. Alex Bachuk explains what it offers and how to use it in your projects.
Alex Bachuk

D3 is huge in the Web data-vis world and 4.0 is a significant update. D3 is now modular, composed of small libraries you can also use independently.

A well presented, flexible, and lightweight JavaScript animation library with 10 CodePen examples to show it off.
Julian Garnier

Need to crank out features faster? Corgibytes cleans up technical debt that gets in the way of rapid release cycles. One client doubled their productivity with zero new hires. Don’t let tech debt slow you down. Call the Corgis.
Corgibytes   Sponsored
Corgibytes

Feeling adventurous? Follow this walkthrough to building something very simple using WebAssembly, a new under-development bytecode for writing and running browser agnostic code for the Web.
Nick Larsen

A look at how to use the Angular 2 CLI to rapidly scaffold, develop, test and deploy an Angular 2 webapp.
Jeremy Likness

A brief entry-level introduction to debugging Node apps using the debug module, the built-in debugger and Chrome DevTools.
Gergely Nemeth

A layer on top of React Native providing a basic set of components for mobile app development.
GeekyAnts

Jobs

  • Software Development Engineer at AmazonFrontend web expert? Come to Amazon and improve the Search experience for hundreds of millions of customers. Amazon, Search Customer Experience
  • Senior Node Engineer at TES USA (San Francisco, CA or remote)Make a difference in teachers’ lives with a platform that allows them to find, share and sell resources worldwide. Join TES USA’s small, global team to embrace challenges, be part of a lean process, and impact education. TES USA
  • Job Offers. No resume necessary.Create your Hired profile to get top companies to start applying to hire you. Get offers from $75,000 - $250,000 on the platform in 1 week. Hired.com

In brief

Looking for more on Node? Read this week's Node Weekly too :-)

Curated by Peter Cooper and published by Cooper Press.

Stop getting JavaScript Weekly : Change email address : Read this issue on the Web

© Cooper Press Ltd. Office 30, Lincoln Way, Louth, LN11 0LS, UK


by via JavaScript Weekly

Anime – Javascript Animation Engine

Anime is a flexible yet lightweight JavaScript animation library. It works with CSS, Individual Transforms, SVG, DOM attributes and JS Objects.


by via jQuery-Plugins.net RSS Feed

7 Workflows Entrepreneurs Should Automate with Zapier

Zapier integrations

Zapier helps you to build bridges between your favorite apps and services, allowing teams and individuals to automate more of their workflows. Every one-to-one connection made between two apps is called a “Zap” and they’re designed to make you work smarter, not harder. With over 500 apps to choose from, it’s almost impossible to choose only a handful of Zaps.

Let’s take a look at seven Zaps that can make your life easier.

1. Create Mailchimp Subscribers from Typeform or PayPal

PayPal to Mailchimp workflow

Mailchimp is an email marketing service that lets you design emails, maintain a list of subscribers, email those subscribers, and then monitor the results of that campaign. But what happens when a customer isn’t a subscriber?

With this PayPal → Mailchimp workflow, Zapier monitors all sales made via PayPal and enters the customer’s email address into your email campaign in Mailchimp, effectively helping you to retain each new customer.

Typeform to Mailchimp workflow

You can do the same thing with Typeform. Let’s say that you’re using Typeform to survey your website’s visitors about the user experience that they received. The Typeform → Mailchimp Zap will retain the user’s email address in Mailchimp so you can tell that user about the new version of your website, derived from the feedback that they originally offered.

2. Create Trello Cards from Gmail Emails and Update in Slack

Gmail to Trello workflow

With the influx of morning emails it can be near-impossible to convert each one into an actionable task in a sensible amount of time. The Gmail → Trello Zap can fix that, helping you to reach “inbox zero” much faster. In short, Zapier scans your Gmail for emails with a certain label and creates a formatted Trello card from them.

Trello to Slack workflow

You can take this workflow a step further by automatically updating teammates about this new Trello card in Slack, so that the team can be notified about the task and complete it. All that from a simple label!

3. Get Notified of New Dropbox Files in Slack

Dropbox to Slack workflow

I can think of a number of reasons why this Dropbox → Slack setup is epic. Firstly, Dropbox really drains your battery because it constantly checks for file updates, so having notifications in Slack can quite literally save you hours of battery life. But don’t worry, not only can you be notified in Slack of new Dropbox files, but Slack can import the file, making it searchable and downloadable from within Slack. Dropbox doesn’t even need to be switched on!

Continue reading %7 Workflows Entrepreneurs Should Automate with Zapier%


by Daniel Schwarz via SitePoint