Tips for improving the checkout interface to get better conversions

Post pobrano z: Tips for improving the checkout interface to get better conversions

Many
people are choosing to sell products online as it is now easier than ever. When
designing and maintaining an online shop you should focus on the shopping cart
as one of the main areas of importance.

Having
a checkout that runs smoothly and is easy to access is by far the most
important element within a successful e-commerce site.

Having
a well-designed e-commerce website is all about getting trust from the
customers and it is for this reason that the checkout area on the payment page
needs to be very secure and well-designed.

Checkout
Image source

A
well designed and simple layout will make the customer feel more at ease when
they enter their payment information and their private details.

The
problem with an e-commerce website is that if they are too vague and
unwelcoming they can drive customers away. This mostly happens when the web development company handles the UX
as well. Shop owners then risk losing over half of all their customers. So how
do you make sure that your shopping cart is well tweaked to all the potential
customers? For starters, let UX designers handle UX. Still, here are a few
guidelines on designing the checkout interface.

Registration should be optional

The
benefit of registration is that they can allow one the ability to gain
information about their customers. However, this may deter new customers from
using the website
and will stop sales of products from taking
place.

The
best websites really will give the customer the choice of whether they want to
register or not as many people do not enjoy sharing their personal information
but may still wish to buy the products on the website. The annoyance of having
to fill out a registration form is a danger of putting the customer off for
life.

So
how does one get a customer to register without intruding on the purchase? One
method is to ask the customer if they wish to register once they have made the
purchase by offering them a set of forms to fill in. This may be as simple as a
username and password.

The single-page checkout

The single page checkout
Image source

The
trend these days with the modern checkout design is to have a single page
checkout which is easy to understand and quick to fill out.

These
are the most popular ways to purchase orders as multiple columns have shown to
confuse and deter customers from making the initial purchase.

Once
you have a single page flow in your checkout area of the site, you are much
more likely to get your customers purchasing the products that they want to
buy.

If
you’re using WooCommerce and you want to enable this functionality, look
through the best WooCommerce plugins. There surely is
one that has this one built in. If you’re using Opencart or something
else, you might need to look into their guides to see if they have a solution
for this.

Have a back button in the design

It
can be a very good idea to have a back button in the checkout process. If this
is not implemented, when the customer chooses to go back on the process they
may get an error message which will cause frustration and problems for the
purchase. Having a back button allows the customer the ability to check their
details.

If
a back button is not implemented and the customer gets an error message, they
are likely to give up on the whole process altogether.

Optimize for mobile

Many
web designers forget that customers often use their phones to browse websites
and may use this device to purchase products that they find online.

Optimize for mobile
Image source

However,
many websites are not optimized for mobile devices and will not be
able to sell products to the customer in this way. In order to maximize
profits, the individual needs to make sure that their website can work on many
different mobile devices. This often means cutting back on the design of the
site for mobile devices by removing input fields and focusing on the
essentials.

A
checkout on a mobile device should also be as simple as it is on the web and
should not try to make the customer register for the site before they make
their purchase. You should constantly do tweaks to the whole buying process and
make sure everything is as smooth as possible for the end user. Look into web application testing to streamline
your optimization process instead of doing things oldschool.

Set the shipping address as billing address

It
is always a good idea to combine the shipping address and the billing address to
make things simpler for the customer as they will often be making a purchase
from home.

By
doing this the checkout form becomes simpler for the customer and they will
quickly understand that their shipping address is also the billing address by
default.

Display all cart items

Display all cart items
Image source

It
is important to clearly show what the customer has bought when they are at the
checkout stage of their purchase. This is also important if you are offering a
special type of shipping such as express delivery.

If
you are in any way unclear about the purchases that customers are making at
this stage, they may very well abandon the purchase and give up completely on
the website.

Trust is vital

Trust is one of the most important
elements in a website
as an individual has never even met you and
is trying to make a purchase of a product that they need.

However,
the good thing is that online shops are becoming more and more popular as one
of the main ways in which to buy products while security and design are also
developing at a rapid rate. Just as in the real world, there is always the
possibility of data being lost or stolen. However, these situations are rare.

Trust is vital
Image source

Keeping the customer feeling safe and
confident

is the key goal and this can be done by offering a more personal experience.
Showing phone numbers and other easy ways to contact the shop is always a good
idea.

Another
good idea is to have trust signals which can be placed throughout the site.
These are simply symbols that have been designed and state things that will
keep the customer feeling safe and secure.

Use progress trackers

Use progress trackers
Image source

A
well-designed checkout page will give the customer the information they need in
order for them to feel safe within the checkout process. In this situation, a
progress tracker is used to show the customer exactly what stage they are at
with the checkout process so that they know how much further they have to go
until the order is completed.

Use descriptions for your form fields

There
will also be many moments when one will need to enter information regarding
personal information such as the email address. Some customers will understand
what this information is needed for. However, others may need a small
description which can either be on the show or hidden behind an arrow button to
explain what the information is used for.

Use only relevant fields in your forms

Use only relevant fields in your forms
Image source

It
really is a good idea to avoid as many forms as possible and stick to the bare
essentials as customers often feel like their personal information is invaded.

This
technique can be seen in some of the bigger websites, which always stick to the
minimal amount of forms, allowing customers to quickly enter the information
and make a purchase without unnecessary hassle.

Avoid multi-columns

It
is also a good idea to avoid multi-columns as these can confuse the customers
when they least expect it. The customer wants to enter their data quickly and
does not want to spend on time and energy on forms that they don’t understand.

The
problem with having several columns on one page is that users begin to wonder
whether these columns are related and this begins to bring confusion to the
user.

Consider closed checkouts

The
final thing to make sure when setting up an e-commerce site is to make sure the
customer fully understands what they are purchasing and how much they have paid
for that product. It is important to outline any other costs when the customer
makes their purchase so that they know exactly how much they are spending.

Finally,
the customer should feel completely confident that their purchase has been
processed and that it is on the way to them. Once they feel this, they are
likely to rely on the website for more product purchases in the future.

Tips for improving the checkout interface to get better conversions

Post pobrano z: Tips for improving the checkout interface to get better conversions

Many
people are choosing to sell products online as it is now easier than ever. When
designing and maintaining an online shop you should focus on the shopping cart
as one of the main areas of importance.

Having
a checkout that runs smoothly and is easy to access is by far the most
important element within a successful e-commerce site.

Having
a well-designed e-commerce website is all about getting trust from the
customers and it is for this reason that the checkout area on the payment page
needs to be very secure and well-designed.

Checkout
Image source

A
well designed and simple layout will make the customer feel more at ease when
they enter their payment information and their private details.

The
problem with an e-commerce website is that if they are too vague and
unwelcoming they can drive customers away. This mostly happens when the web development company handles the UX
as well. Shop owners then risk losing over half of all their customers. So how
do you make sure that your shopping cart is well tweaked to all the potential
customers? For starters, let UX designers handle UX. Still, here are a few
guidelines on designing the checkout interface.

Registration should be optional

The
benefit of registration is that they can allow one the ability to gain
information about their customers. However, this may deter new customers from
using the website
and will stop sales of products from taking
place.

The
best websites really will give the customer the choice of whether they want to
register or not as many people do not enjoy sharing their personal information
but may still wish to buy the products on the website. The annoyance of having
to fill out a registration form is a danger of putting the customer off for
life.

So
how does one get a customer to register without intruding on the purchase? One
method is to ask the customer if they wish to register once they have made the
purchase by offering them a set of forms to fill in. This may be as simple as a
username and password.

The single-page checkout

The single page checkout
Image source

The
trend these days with the modern checkout design is to have a single page
checkout which is easy to understand and quick to fill out.

These
are the most popular ways to purchase orders as multiple columns have shown to
confuse and deter customers from making the initial purchase.

Once
you have a single page flow in your checkout area of the site, you are much
more likely to get your customers purchasing the products that they want to
buy.

If
you’re using WooCommerce and you want to enable this functionality, look
through the best WooCommerce plugins. There surely is
one that has this one built in. If you’re using Opencart or something
else, you might need to look into their guides to see if they have a solution
for this.

Have a back button in the design

It
can be a very good idea to have a back button in the checkout process. If this
is not implemented, when the customer chooses to go back on the process they
may get an error message which will cause frustration and problems for the
purchase. Having a back button allows the customer the ability to check their
details.

If
a back button is not implemented and the customer gets an error message, they
are likely to give up on the whole process altogether.

Optimize for mobile

Many
web designers forget that customers often use their phones to browse websites
and may use this device to purchase products that they find online.

Optimize for mobile
Image source

However,
many websites are not optimized for mobile devices and will not be
able to sell products to the customer in this way. In order to maximize
profits, the individual needs to make sure that their website can work on many
different mobile devices. This often means cutting back on the design of the
site for mobile devices by removing input fields and focusing on the
essentials.

A
checkout on a mobile device should also be as simple as it is on the web and
should not try to make the customer register for the site before they make
their purchase. You should constantly do tweaks to the whole buying process and
make sure everything is as smooth as possible for the end user. Look into web application testing to streamline
your optimization process instead of doing things oldschool.

Set the shipping address as billing address

It
is always a good idea to combine the shipping address and the billing address to
make things simpler for the customer as they will often be making a purchase
from home.

By
doing this the checkout form becomes simpler for the customer and they will
quickly understand that their shipping address is also the billing address by
default.

Display all cart items

Display all cart items
Image source

It
is important to clearly show what the customer has bought when they are at the
checkout stage of their purchase. This is also important if you are offering a
special type of shipping such as express delivery.

If
you are in any way unclear about the purchases that customers are making at
this stage, they may very well abandon the purchase and give up completely on
the website.

Trust is vital

Trust is one of the most important
elements in a website
as an individual has never even met you and
is trying to make a purchase of a product that they need.

However,
the good thing is that online shops are becoming more and more popular as one
of the main ways in which to buy products while security and design are also
developing at a rapid rate. Just as in the real world, there is always the
possibility of data being lost or stolen. However, these situations are rare.

Trust is vital
Image source

Keeping the customer feeling safe and
confident

is the key goal and this can be done by offering a more personal experience.
Showing phone numbers and other easy ways to contact the shop is always a good
idea.

Another
good idea is to have trust signals which can be placed throughout the site.
These are simply symbols that have been designed and state things that will
keep the customer feeling safe and secure.

Use progress trackers

Use progress trackers
Image source

A
well-designed checkout page will give the customer the information they need in
order for them to feel safe within the checkout process. In this situation, a
progress tracker is used to show the customer exactly what stage they are at
with the checkout process so that they know how much further they have to go
until the order is completed.

Use descriptions for your form fields

There
will also be many moments when one will need to enter information regarding
personal information such as the email address. Some customers will understand
what this information is needed for. However, others may need a small
description which can either be on the show or hidden behind an arrow button to
explain what the information is used for.

Use only relevant fields in your forms

Use only relevant fields in your forms
Image source

It
really is a good idea to avoid as many forms as possible and stick to the bare
essentials as customers often feel like their personal information is invaded.

This
technique can be seen in some of the bigger websites, which always stick to the
minimal amount of forms, allowing customers to quickly enter the information
and make a purchase without unnecessary hassle.

Avoid multi-columns

It
is also a good idea to avoid multi-columns as these can confuse the customers
when they least expect it. The customer wants to enter their data quickly and
does not want to spend on time and energy on forms that they don’t understand.

The
problem with having several columns on one page is that users begin to wonder
whether these columns are related and this begins to bring confusion to the
user.

Consider closed checkouts

The
final thing to make sure when setting up an e-commerce site is to make sure the
customer fully understands what they are purchasing and how much they have paid
for that product. It is important to outline any other costs when the customer
makes their purchase so that they know exactly how much they are spending.

Finally,
the customer should feel completely confident that their purchase has been
processed and that it is on the way to them. Once they feel this, they are
likely to rely on the website for more product purchases in the future.

Tips for improving the checkout interface to get better conversions

Post pobrano z: Tips for improving the checkout interface to get better conversions

Many
people are choosing to sell products online as it is now easier than ever. When
designing and maintaining an online shop you should focus on the shopping cart
as one of the main areas of importance.

Having
a checkout that runs smoothly and is easy to access is by far the most
important element within a successful e-commerce site.

Having
a well-designed e-commerce website is all about getting trust from the
customers and it is for this reason that the checkout area on the payment page
needs to be very secure and well-designed.

Checkout
Image source

A
well designed and simple layout will make the customer feel more at ease when
they enter their payment information and their private details.

The
problem with an e-commerce website is that if they are too vague and
unwelcoming they can drive customers away. This mostly happens when the web development company handles the UX
as well. Shop owners then risk losing over half of all their customers. So how
do you make sure that your shopping cart is well tweaked to all the potential
customers? For starters, let UX designers handle UX. Still, here are a few
guidelines on designing the checkout interface.

Registration should be optional

The
benefit of registration is that they can allow one the ability to gain
information about their customers. However, this may deter new customers from
using the website
and will stop sales of products from taking
place.

The
best websites really will give the customer the choice of whether they want to
register or not as many people do not enjoy sharing their personal information
but may still wish to buy the products on the website. The annoyance of having
to fill out a registration form is a danger of putting the customer off for
life.

So
how does one get a customer to register without intruding on the purchase? One
method is to ask the customer if they wish to register once they have made the
purchase by offering them a set of forms to fill in. This may be as simple as a
username and password.

The single-page checkout

The single page checkout
Image source

The
trend these days with the modern checkout design is to have a single page
checkout which is easy to understand and quick to fill out.

These
are the most popular ways to purchase orders as multiple columns have shown to
confuse and deter customers from making the initial purchase.

Once
you have a single page flow in your checkout area of the site, you are much
more likely to get your customers purchasing the products that they want to
buy.

If
you’re using WooCommerce and you want to enable this functionality, look
through the best WooCommerce plugins. There surely is
one that has this one built in. If you’re using Opencart or something
else, you might need to look into their guides to see if they have a solution
for this.

Have a back button in the design

It
can be a very good idea to have a back button in the checkout process. If this
is not implemented, when the customer chooses to go back on the process they
may get an error message which will cause frustration and problems for the
purchase. Having a back button allows the customer the ability to check their
details.

If
a back button is not implemented and the customer gets an error message, they
are likely to give up on the whole process altogether.

Optimize for mobile

Many
web designers forget that customers often use their phones to browse websites
and may use this device to purchase products that they find online.

Optimize for mobile
Image source

However,
many websites are not optimized for mobile devices and will not be
able to sell products to the customer in this way. In order to maximize
profits, the individual needs to make sure that their website can work on many
different mobile devices. This often means cutting back on the design of the
site for mobile devices by removing input fields and focusing on the
essentials.

A
checkout on a mobile device should also be as simple as it is on the web and
should not try to make the customer register for the site before they make
their purchase. You should constantly do tweaks to the whole buying process and
make sure everything is as smooth as possible for the end user. Look into web application testing to streamline
your optimization process instead of doing things oldschool.

Set the shipping address as billing address

It
is always a good idea to combine the shipping address and the billing address to
make things simpler for the customer as they will often be making a purchase
from home.

By
doing this the checkout form becomes simpler for the customer and they will
quickly understand that their shipping address is also the billing address by
default.

Display all cart items

Display all cart items
Image source

It
is important to clearly show what the customer has bought when they are at the
checkout stage of their purchase. This is also important if you are offering a
special type of shipping such as express delivery.

If
you are in any way unclear about the purchases that customers are making at
this stage, they may very well abandon the purchase and give up completely on
the website.

Trust is vital

Trust is one of the most important
elements in a website
as an individual has never even met you and
is trying to make a purchase of a product that they need.

However,
the good thing is that online shops are becoming more and more popular as one
of the main ways in which to buy products while security and design are also
developing at a rapid rate. Just as in the real world, there is always the
possibility of data being lost or stolen. However, these situations are rare.

Trust is vital
Image source

Keeping the customer feeling safe and
confident

is the key goal and this can be done by offering a more personal experience.
Showing phone numbers and other easy ways to contact the shop is always a good
idea.

Another
good idea is to have trust signals which can be placed throughout the site.
These are simply symbols that have been designed and state things that will
keep the customer feeling safe and secure.

Use progress trackers

Use progress trackers
Image source

A
well-designed checkout page will give the customer the information they need in
order for them to feel safe within the checkout process. In this situation, a
progress tracker is used to show the customer exactly what stage they are at
with the checkout process so that they know how much further they have to go
until the order is completed.

Use descriptions for your form fields

There
will also be many moments when one will need to enter information regarding
personal information such as the email address. Some customers will understand
what this information is needed for. However, others may need a small
description which can either be on the show or hidden behind an arrow button to
explain what the information is used for.

Use only relevant fields in your forms

Use only relevant fields in your forms
Image source

It
really is a good idea to avoid as many forms as possible and stick to the bare
essentials as customers often feel like their personal information is invaded.

This
technique can be seen in some of the bigger websites, which always stick to the
minimal amount of forms, allowing customers to quickly enter the information
and make a purchase without unnecessary hassle.

Avoid multi-columns

It
is also a good idea to avoid multi-columns as these can confuse the customers
when they least expect it. The customer wants to enter their data quickly and
does not want to spend on time and energy on forms that they don’t understand.

The
problem with having several columns on one page is that users begin to wonder
whether these columns are related and this begins to bring confusion to the
user.

Consider closed checkouts

The
final thing to make sure when setting up an e-commerce site is to make sure the
customer fully understands what they are purchasing and how much they have paid
for that product. It is important to outline any other costs when the customer
makes their purchase so that they know exactly how much they are spending.

Finally,
the customer should feel completely confident that their purchase has been
processed and that it is on the way to them. Once they feel this, they are
likely to rely on the website for more product purchases in the future.

Tips for improving the checkout interface to get better conversions

Post pobrano z: Tips for improving the checkout interface to get better conversions

Many
people are choosing to sell products online as it is now easier than ever. When
designing and maintaining an online shop you should focus on the shopping cart
as one of the main areas of importance.

Having
a checkout that runs smoothly and is easy to access is by far the most
important element within a successful e-commerce site.

Having
a well-designed e-commerce website is all about getting trust from the
customers and it is for this reason that the checkout area on the payment page
needs to be very secure and well-designed.

Checkout
Image source

A
well designed and simple layout will make the customer feel more at ease when
they enter their payment information and their private details.

The
problem with an e-commerce website is that if they are too vague and
unwelcoming they can drive customers away. This mostly happens when the web development company handles the UX
as well. Shop owners then risk losing over half of all their customers. So how
do you make sure that your shopping cart is well tweaked to all the potential
customers? For starters, let UX designers handle UX. Still, here are a few
guidelines on designing the checkout interface.

Registration should be optional

The
benefit of registration is that they can allow one the ability to gain
information about their customers. However, this may deter new customers from
using the website
and will stop sales of products from taking
place.

The
best websites really will give the customer the choice of whether they want to
register or not as many people do not enjoy sharing their personal information
but may still wish to buy the products on the website. The annoyance of having
to fill out a registration form is a danger of putting the customer off for
life.

So
how does one get a customer to register without intruding on the purchase? One
method is to ask the customer if they wish to register once they have made the
purchase by offering them a set of forms to fill in. This may be as simple as a
username and password.

The single-page checkout

The single page checkout
Image source

The
trend these days with the modern checkout design is to have a single page
checkout which is easy to understand and quick to fill out.

These
are the most popular ways to purchase orders as multiple columns have shown to
confuse and deter customers from making the initial purchase.

Once
you have a single page flow in your checkout area of the site, you are much
more likely to get your customers purchasing the products that they want to
buy.

If
you’re using WooCommerce and you want to enable this functionality, look
through the best WooCommerce plugins. There surely is
one that has this one built in. If you’re using Opencart or something
else, you might need to look into their guides to see if they have a solution
for this.

Have a back button in the design

It
can be a very good idea to have a back button in the checkout process. If this
is not implemented, when the customer chooses to go back on the process they
may get an error message which will cause frustration and problems for the
purchase. Having a back button allows the customer the ability to check their
details.

If
a back button is not implemented and the customer gets an error message, they
are likely to give up on the whole process altogether.

Optimize for mobile

Many
web designers forget that customers often use their phones to browse websites
and may use this device to purchase products that they find online.

Optimize for mobile
Image source

However,
many websites are not optimized for mobile devices and will not be
able to sell products to the customer in this way. In order to maximize
profits, the individual needs to make sure that their website can work on many
different mobile devices. This often means cutting back on the design of the
site for mobile devices by removing input fields and focusing on the
essentials.

A
checkout on a mobile device should also be as simple as it is on the web and
should not try to make the customer register for the site before they make
their purchase. You should constantly do tweaks to the whole buying process and
make sure everything is as smooth as possible for the end user. Look into web application testing to streamline
your optimization process instead of doing things oldschool.

Set the shipping address as billing address

It
is always a good idea to combine the shipping address and the billing address to
make things simpler for the customer as they will often be making a purchase
from home.

By
doing this the checkout form becomes simpler for the customer and they will
quickly understand that their shipping address is also the billing address by
default.

Display all cart items

Display all cart items
Image source

It
is important to clearly show what the customer has bought when they are at the
checkout stage of their purchase. This is also important if you are offering a
special type of shipping such as express delivery.

If
you are in any way unclear about the purchases that customers are making at
this stage, they may very well abandon the purchase and give up completely on
the website.

Trust is vital

Trust is one of the most important
elements in a website
as an individual has never even met you and
is trying to make a purchase of a product that they need.

However,
the good thing is that online shops are becoming more and more popular as one
of the main ways in which to buy products while security and design are also
developing at a rapid rate. Just as in the real world, there is always the
possibility of data being lost or stolen. However, these situations are rare.

Trust is vital
Image source

Keeping the customer feeling safe and
confident

is the key goal and this can be done by offering a more personal experience.
Showing phone numbers and other easy ways to contact the shop is always a good
idea.

Another
good idea is to have trust signals which can be placed throughout the site.
These are simply symbols that have been designed and state things that will
keep the customer feeling safe and secure.

Use progress trackers

Use progress trackers
Image source

A
well-designed checkout page will give the customer the information they need in
order for them to feel safe within the checkout process. In this situation, a
progress tracker is used to show the customer exactly what stage they are at
with the checkout process so that they know how much further they have to go
until the order is completed.

Use descriptions for your form fields

There
will also be many moments when one will need to enter information regarding
personal information such as the email address. Some customers will understand
what this information is needed for. However, others may need a small
description which can either be on the show or hidden behind an arrow button to
explain what the information is used for.

Use only relevant fields in your forms

Use only relevant fields in your forms
Image source

It
really is a good idea to avoid as many forms as possible and stick to the bare
essentials as customers often feel like their personal information is invaded.

This
technique can be seen in some of the bigger websites, which always stick to the
minimal amount of forms, allowing customers to quickly enter the information
and make a purchase without unnecessary hassle.

Avoid multi-columns

It
is also a good idea to avoid multi-columns as these can confuse the customers
when they least expect it. The customer wants to enter their data quickly and
does not want to spend on time and energy on forms that they don’t understand.

The
problem with having several columns on one page is that users begin to wonder
whether these columns are related and this begins to bring confusion to the
user.

Consider closed checkouts

The
final thing to make sure when setting up an e-commerce site is to make sure the
customer fully understands what they are purchasing and how much they have paid
for that product. It is important to outline any other costs when the customer
makes their purchase so that they know exactly how much they are spending.

Finally,
the customer should feel completely confident that their purchase has been
processed and that it is on the way to them. Once they feel this, they are
likely to rely on the website for more product purchases in the future.

Same joke made-up again? / La même idée remaquillée?

Post pobrano z: Same joke made-up again? / La même idée remaquillée?

THE ORIGINAL?
Pepsi Cola – Pepsi X Energy Cola – 2006
“Don’t sleep at the party”
Click on the images to enlarge
Source : Adeevee
Agency : Almap BBDO (Brazil)
LESS ORIGINAL
RollingStone Beer – 2010
“The edition is limited,
fun isn’t”
Source : AdForum
Ag : BBDO Milan (Italy)
LESS ORIGINAL
Pilsener Light – 2019
“This halloween,
avoid being disguised”
Source : Adsoftheworld
Ag : MullenLowe (Ecuador)

Same joke made-up again? / La même idée remaquillée?

Post pobrano z: Same joke made-up again? / La même idée remaquillée?

THE ORIGINAL?
Pepsi Cola – Pepsi X Energy Cola – 2006
“Don’t sleep at the party”
Click on the images to enlarge
Source : Adeevee
Agency : Almap BBDO (Brazil)
LESS ORIGINAL
RollingStone Beer – 2010
“The edition is limited,
fun isn’t”
Source : AdForum
Ag : BBDO Milan (Italy)
LESS ORIGINAL
Pilsener Light – 2019
“This halloween,
avoid being disguised”
Source : Adsoftheworld
Ag : MullenLowe (Ecuador)

Blue Beanie Day 2019

Post pobrano z: Blue Beanie Day 2019

November 30th, the official „Blue Beanie Day,” has come and gone. I’m not sure I ever grokked the exact spirit of it, but I’ve written about what it means to me. Last year:

Web standards, as an overall idea, has entirely taken hold and won the day. That’s worth celebrating, as the web would be kind of a joke without them. So now, our job is to uphold them. We need to cry foul when we see a browser go rogue and ship an API outside the standards process.

Building off that, I’d add the need to prevent browsers from breaking things that have worked for half a decade, like iOS 13 did with CSS parallax.

Zeldman, the Blue Beanie Day champion, isn’t particularly optimistic:

Mainly, though, Blue Beanie Day is receding from view because our industry as a whole thinks less and less about accessibility (not that we ever had an A game on the subject), and talks less and less about progressive enhancement, preferring to chase the ephemeral goal posts of over-engineered solutions to non-problems.

It’s people who won the browser wars, so I suppose it’s fitting that people are going to let it slip away.

The post Blue Beanie Day 2019 appeared first on CSS-Tricks.

Adam Argyle’s 2020 CSS Predictions

Post pobrano z: Adam Argyle’s 2020 CSS Predictions

I think Adam’s first prediction is his boldest, even beyond his Hail Mary prediction. CSS grid is awesome and gap is perhaps one of its best qualities, but gap superseding spacing things out in other ways (e.g. margin) is a bold prediction indeed, especially with Firefox being the only browser supporting it in flexbox.

Direct Link to ArticlePermalink

The post Adam Argyle’s 2020 CSS Predictions appeared first on CSS-Tricks.

Yap

Post pobrano z: Yap

Interesting idea for a „chat room” from Postlight:

  1. Create a Yap chat room.
  2. Invite others to join and talk.
  3. Share a URL of just about anything.
  4. Everyone gathering can comment on what you’ve shared.
  5. If you think your conversation deserves an audience, share the URL of your chat publicly.
  6. Only six people can join. Lots of people can observe if you invite them. But just six chatters.

Yap.

Direct Link to ArticlePermalink

The post Yap appeared first on CSS-Tricks.

Detecting Inactive Users

Post pobrano z: Detecting Inactive Users

Most of the time you don’t really care about whether a user is actively engaged or temporarily inactive on your application. Inactive, meaning, perhaps they got up to get a drink of water, or more likely, changed tabs to do something else for a bit. There are situations, though, when tracking the user activity and detecting inactive-ness might be handy.

Let’s think about few examples when you just might need that functionality:

  • tracking article reading time
  • auto saving form or document
  • auto pausing game
  • hiding video player controls
  • auto logging out users for security reasons

I recently encountered a feature that involved that last example, auto logging out inactive users for security reasons.

Why should we care about auto logout?

Many applications give users access to some amount of their personal data. Depending on the purpose of the application, the amount and the value of that data may be different. It may only be user’s name, but it may also be more sensitive data, like medical records, financial records, etc.

There are chances that some users may forget to log out and leave the session open. How many times has it happened to you? Maybe your phone suddenly rang, or you needed to leave immediately, leaving the browser on. Leaving a user session open is dangerous as someone else may use that session to extract sensitive data.

One way to fight this issue involves tracking if the user has interacted with the app within a certain period of time, then trigger logout if that time is exceeded. You may want to show a popover, or perhaps a timer that warns the user that logout is about to happen. Or you may just logout immediately when inactive user is detected.

Going one level down, what we want to do is count the time that’s passed from the user’s last interaction. If that time period is longer than our threshold, we want to fire our inactivity handler. If the user performs an action before the threshold is breached, we reset the counter and start counting again.

This article will show how we can implement such an activity tracking logic based on this example.

Step 1: Implement tracking logic

Let’s implement two functions. The first will be responsible for resetting our timer each time the user interacts with the app, and the second will handle situation when the user becomes inactive:

  • resetUserActivityTimeout – This will be our method that’s responsible for clearing the existing timeout and starting a new one each time the user interacts with the application.
  • inactiveUserAction – This will be our method that is fired when the user activity timeout runs out.
let userActivityTimeout = null;

function resetUserActivityTimeout() {
  clearTimeout(userActivityTimeout);
  userActivityTimeout = setTimeout(() => {
    inactiveUserAction();
  }, INACTIVE_USER_TIME_THRESHOLD);
}

function inactiveUserAction() {
  // logout logic
}

OK, so we have methods responsible for tracking the activity but we do not use them anywhere yet.

Step 2: Tracking activation

Now we need to implement methods that are responsible for activating the tracking. In those methods, we add event listeners that will call our resetUserActivityTimeout method when the event is detected. You can listen on as many events as you want, but for simplicity, we will restrict that list to a few of the most common ones.

function activateActivityTracker() {
  window.addEventListener("mousemove", resetUserActivityTimeout);
  window.addEventListener("scroll", resetUserActivityTimeout);
  window.addEventListener("keydown", resetUserActivityTimeout);
  window.addEventListener("resize", resetUserActivityTimeout);
}

That’s it. Our user tracking is ready. The only thing we need to do is to call the activateActivityTracker on our page load.

We can leave it like this, but if you look closer, there is a serious performance issue with the code we just committed. Each time the user interacts with the app, the whole logic runs. That’s good, but look closer. There are some types of events that are fired an enormous amount of times when the user interacts with the page, even if it isn’t necessary for our tracking. Let’s look at mousemove event. Even if you move your mouse just a touch, mousemove event will be fired dozens of times. This is a real performance killer. We can deal with that issue by introducing a throttler that will allow the user activity logic to be fired only once per specified time period.

Let’s do that now.

Step 3: Improve performance

First, we need to add one more variable that will keep reference to our throttler timeout.

let userActivityThrottlerTimeout = null

Then, we create a method that will create our throttler. In that method, we check if the throttler timeout already exists, and if it doesn’t, we create one that will fire the resetUserActivityTimeout after specific period of time. That is the period for which all user activity will not trigger the tracking logic again. After that time the throttler timeout is cleared allowing the next interaction to reset the activity tracker.

userActivityThrottler() {
  if (!userActivityThrottlerTimeout) {
    userActivityThrottlerTimeout = setTimeout(() => {
      resetUserActivityTimeout();

      clearTimeout(userActivityThrottlerTimeout);
      userActivityThrottlerTimeout = null;
    }, USER_ACTIVITY_THROTTLER_TIME);
  }
}

We just created a new method that should be fired on user interaction, so we need to remember to change the event handlers from resetUserActivityTimeout to userActivityThrottler in our activate logic.

activateActivityTracker() {
  window.addEventListener("mousemove", userActivityThrottler);
  // ...
}

Bonus: Let’s reVue it!

Now that we have our activity tracking logic implemented let’s see how can move that logic to an application build with Vue. We will base the explanation on this example.

First we need to move all variables into our component’s data, that is the place where all reactive props live.

export default {
  data() {
    return {
      isInactive: false,
      userActivityThrottlerTimeout: null,
      userActivityTimeout: null
    };
  },
// ...

Then we move all our functions to methods:

// ...
  methods: {
    activateActivityTracker() {...},
    resetUserActivityTimeout() {...},
    userActivityThrottler() {...},
    inactiveUserAction() {...}
  },
// ...

Since we are using Vue and it’s reactive system, we can drop all direct DOM manipulations i.(i.e. document.getElementById("app").innerHTML) and depend on our isInactive data property. We can access the data property directly in our component’s template like below.

<template>
  <div id="app">
    <p>User is inactive = {{ isInactive }}</p>
  </div>
</template>

Last thing we need to do is to find a proper place to activate the tracking logic. Vue comes with component lifecycle hooks which are exactly what we need — specifically the beforeMount hook. So let’s put it there.

// ...
  beforeMount() {
    this.activateActivityTracker();
  },
// ...

There is one more thing we can do. Since we are using timeouts and register event listeners on window, it is always a good practice to clean up a little bit after ourselves. We can do that in another lifecycle hook, beforeDestroy. Let’s remove all listeners that we registered and clear all timeouts when the component’s lifecycle comes to an end.

// ...
  beforeDestroy() {
    window.removeEventListener("mousemove", this.userActivityThrottler);
    window.removeEventListener("scroll", this.userActivityThrottler);
    window.removeEventListener("keydown", this.userActivityThrottler);
    window.removeEventListener("resize", this.userActivityThrottler);
  
    clearTimeout(this.userActivityTimeout);
    clearTimeout(this.userActivityThrottlerTimeout);
  }
// ...

That’s a wrap!

This example concentrates purely on detecting user interaction with the application, reacting to it and firing a method when no interaction is detected within specific period of time. I wanted this example to be as universal as possible, so that’s why I leave the implementation of what should happened when an inactive user it detected to you.

I hope you will find this solution useful in your project!

The post Detecting Inactive Users appeared first on CSS-Tricks.

Agregator najlepszych postów o designie, webdesignie, cssie i Internecie