Archive

Archive for November, 2019

Product Search and Filters Are a Snap With WooCommerce

November 26th, 2019 No comments

Let’s say you visit an e-commerce site because you want to buy the latest banana peeler model. Bananas are hard enough to peel, right? Only a tool will do!

What’s the first thing you’re going to do on the site? Chances are, it’s entering something into the (hopefully) prominent search field. You need a way to tell the store what you’re looking for in order to get recommendations and that’s the first step.

What’s next? Again, chances are you will need to get more specific with what you’re looking for. You may need the search results to be filtered to get a more precise and increase the chance that your banana peeler surfaces to the top. That might be filtering by a specific brand, color, size, availability, or whatever.

Developing an e-commerce site is already a difficult task and throwing in things like search and filters make it even tougher. That’s why WooCommerce is worth looking into. It’s a WordPress plugin that transforms any site into a full-fledged e-commerce machine, complete with product inventory, shipping methods, payment gateways and, yes, front-end functionality for things like search and filtering.

Take the latest WooCommerce release for example. It introduces a new “All Products” block for the Gutenburg block editor. You can literally drop this block on any WordPress page and it will render a fully customizable grid of products from your inventory. Pretty slick!

Photo courtesy of WooCommerce

And what about filtering? There are specific blocks for that too. Drop any number of filtering options on the same page as the All Products block and the filters will automatically know to filter from the products in the block. And there’s a ton of ways to filter products, including price and attributes (e.g. color, size, etc.). Oh, and filters can be combined, of course, so they can be used together for even more fine-grained search results.

Photo courtesy of WooCommerce

This is just one of the many, many ways WooCommerce is lowering the bar to entry for e-commerce while setting high standards for what to expect on an e-commerce site. It’s free and has been downloaded more than 40 million times… now it’s your turn to give it a spin.

If you’re thinking of pulling the trigger on WooCommerce and think you might need to buy some plugins, it’s about to the absolute perfect time of year to do that. Kicking off on Black Friday and running through Cyber Monday, literally everything WooCommerce is 40% off. And if you’d rather do eCommerce on a totally hosted platform, WordPress.com can do that and that’s all 20% off.

The post Product Search and Filters Are a Snap With WooCommerce appeared first on CSS-Tricks.

Categories: Designing, Others Tags:

5 Best Online Tools And Apps For Content Writers

November 26th, 2019 No comments

Writing is mostly regarded as one of the world’s most demanded jobs today. With writing jobs being shared as posted on job sites, it is no surprise that the number of content writers has escalated within the past years.

“As a content writer, there are other things you must take note of asides improving your knowledge of writing. Content writers need to be able to optimize the availability of special tools in their write-ups, as this helps provide better and more efficient ones to be delivered to clients”, says Edmond Kelly, a writer at PaperLeaf.

To do that, writers should adopt the use of online tools and apps. Are you a content writer and still find yourself completely reviewing your works by yourself, or are you a writer who has spent their whole writing career making and adding graphics manually? Well, with the help of certain tools, that story is about to change.

What Writers Need to Know

Just like there are apps to boost productivity, there are also apps that are available to boost writing.

As a content writer, you must know the several available tools out there in the world. These tools are ideal for helping you review articles and include infographics. Also, they help provide special insights, spot errors, and offer suggestions as regards your main ideas.

In this article, we will be looking into several tools that are the best and are designed for content writers.

Top Online Tools And Apps For Content Writers

When searching for a tool to use, picking one can be a little challenging. Below, we will be taking at some of the best online tools and apps that content writers can use in optimizing their write-ups. Here’s the deal:

1. Grammarly

When looking at a list of tools that offer a seamless and easy-to-use user interface, Grammarly is never left out. Grammarly comes in various forms and can be used on various devices across anywhere in the world.

The tool comes in the form of a web app as well as a browser extension. This way, writers can use it even when they are off the website.

Let’s take a closer look at some of Grammarly’s features.

  • Misspelling

Sometimes, writers make mistakes when spelling certain words. Luckily, Grammarly is equipped with a special feature that helps to spot these misspelled words and fix them for you right away.

  • Repetition

Typing efficiently is what everyone must learn. With Grammarly, you learn how to avoid certain mistakes and equally improve your writing styles.

Repetition is one of many mistakes writers sometimes make, and fortunately for them, Grammarly is here to correct such mistakes my omitting the repeated word.

  • Correction of punctuation

Grammarly also corrects wrong punctuations in your write-ups. With this feature, writers can worry less about writing articles that have errors with the usage of commas, colons, and full stops.

  • Missing words

As a content writer, you will understand the fact that words can sometimes be missed. Usually, you get to see this as you review the article. But with Grammarly, the missing word is well-predicted and corrected right away.

2. Infogram

No doubt, you must have come across infographics on the internet. If you are someone who is a writer and find yourself writing content for infographics but not creating them yourself, you might want to use Infogram. Also, if you have been creating infographics yourself, now is the time to let a digital network handle the job for you.

Infographics are important for keeping users engaged with the content. However, creating one takes a while to master. luckily, Infogram is one of the many tools that handle this kind of task.

Infogram comes as a web app that supports an easy-to-use and beautiful user interface. Through its amazing platform, people get the chance to work out unique visual content for their write-ups and projects.

To get a better understanding of what this tool provides, we will take a closer look at some of its features.

  • Design

With its user interface, people can make out unique designs and use them anywhere on the web. Content writers are sure to find this handy and equally get the best out of it.

Through the tool’s design feature, people can begin designing not just infographics, but also reports, slides, dashboards, social media visuals, and unique maps.

Each design you create with Infogram comes in high quality. This kind of design quality is crucial for keeping your audience visually engaged as they absorb all of you the ideas you are trying to pass across.

  • Collaboration

Another feature of the Infogram tool is the ability to collaborate on design projects. This way, more than one person can work on creating a design to be used. If you are a content writer trying to create special designs for your content and also have got a partner, you both can work on this design together.

  • View Design Performance

With Infogram, you can track and keep up with the usage statistics of your designs. This gives you special insights into the engagement levels of those who are viewing your design.

By monitoring the performance statistics of your design, you stand a chance to become knowledgeable of the special designs that need improvements, as well as the ones which are thriving.

3. HubSpot’s Blog Topic Generator

As a content writer, you will find it easy to understand the fact that the topic of every write-up is as important as its content. To make things a lot easier, Hubspot has come up with a special tool that helps generate the topic for blog posts.

The HubSpot’s Blog Topic Generator comes as a handy tool for writers, which is sure to save them the trouble trying to figure out a topic for their post.

Hubspot also understands simplicity is a key factor that engages users. Due to this, the topic generator web app was built to offer writers a seamless and straightforward approach towards generating a topic for their blog post.

Using the web app is considered to be a very simple process. In the fields provided by the tool, users can input five keywords and then watch the tool generate many topics to be used as blog post topics.

4. Google Trends

Google Trends is another tool all writers need to be aware of. Just like its name, the service from Google is designed to provide people with the chance to stay up-to-date with the latest searches and trends.

Writers can personalize the kind of trends they receive, as this allows them to maintain the scope of their content easily. The tool offers writers a chance also to find out what things are trending in their region and also obtain stories based on categories.

With Google Trends, obtaining the latest updates on certain topics has been made easier. Another great thing about the tool is that it is free to use.

5. Feedly

Now, if you want to obtain content ideas without having to work too hard or engage in too much stress, Feedly is a web app that has got you covered. The tool is completely designed to fit content writers, as getting content ideas sometimes can become a challenge. If that ever happens to you, you could always have Feedly to back you up.

When looking at some of the best tools that are fit for content writers, Feedly is never left out of the picture. However, if you are finding it hard to obtain quality and accurate information as regards what kind of ideas you could use in your write-up, then Feedly could come into the picture.

What Freely Offers to Writers

The web app inspires unique ideas and news. If you are a writer, you can always find that browsing through many websites just to obtain a piece of information, as well as the latest news of events in the society, can be tougher than expected. Usually, this takes a whole lot of time to accomplish.

With Feedly, the matter is a little different and less time-consuming. Feedly obtains news from different websites for you. After gathering the news, it requires users to log in and use the news to create great content ideas.

But before being able to gather news from different platforms, users need to first select the sources and sort the news by topics. The amazing features of the web app have gotten it always to come in handy for writers to use.

Conclusion

Many content writers have admitted to the fact that writing is a tough job. When writing, you must consider ideas and factors that can make the task more efficient and easier to accomplish.

The above are 5 of the best tools and apps for content writers, which can greatly improve efficiency and simplicity. Today, using these tools can greatly enhance the way you work.

In conclusion, the above tools are considered the best not just because of their features, but also because of the high number of writers who use them. As a writer, you should take your time to try them out and watch your writing style receive a huge boost. Good luck.

Categories: Others Tags:

5 Best Online Tools And Apps For Content Writers

November 26th, 2019 No comments

Writing is mostly regarded as one of the world’s most demanded jobs today. With writing jobs being shared as posted on job sites, it is no surprise that the number of content writers has escalated within the past years.

“As a content writer, there are other things you must take note of asides improving your knowledge of writing. Content writers need to be able to optimize the availability of special tools in their write-ups, as this helps provide better and more efficient ones to be delivered to clients”, says Edmond Kelly, a writer at PaperLeaf.

To do that, writers should adopt the use of online tools and apps. Are you a content writer and still find yourself completely reviewing your works by yourself, or are you a writer who has spent their whole writing career making and adding graphics manually? Well, with the help of certain tools, that story is about to change.

What Writers Need to Know

Just like there are apps to boost productivity, there are also apps that are available to boost writing.

As a content writer, you must know the several available tools out there in the world. These tools are ideal for helping you review articles and include infographics. Also, they help provide special insights, spot errors, and offer suggestions as regards your main ideas.

In this article, we will be looking into several tools that are the best and are designed for content writers.

Top Online Tools And Apps For Content Writers

When searching for a tool to use, picking one can be a little challenging. Below, we will be taking at some of the best online tools and apps that content writers can use in optimizing their write-ups. Here’s the deal:

1. Grammarly

When looking at a list of tools that offer a seamless and easy-to-use user interface, Grammarly is never left out. Grammarly comes in various forms and can be used on various devices across anywhere in the world.

The tool comes in the form of a web app as well as a browser extension. This way, writers can use it even when they are off the website.

Let’s take a closer look at some of Grammarly’s features.

  • Misspelling

Sometimes, writers make mistakes when spelling certain words. Luckily, Grammarly is equipped with a special feature that helps to spot these misspelled words and fix them for you right away.

  • Repetition

Typing efficiently is what everyone must learn. With Grammarly, you learn how to avoid certain mistakes and equally improve your writing styles.

Repetition is one of many mistakes writers sometimes make, and fortunately for them, Grammarly is here to correct such mistakes my omitting the repeated word.

  • Correction of punctuation

Grammarly also corrects wrong punctuations in your write-ups. With this feature, writers can worry less about writing articles that have errors with the usage of commas, colons, and full stops.

  • Missing words

As a content writer, you will understand the fact that words can sometimes be missed. Usually, you get to see this as you review the article. But with Grammarly, the missing word is well-predicted and corrected right away.

2. Infogram

No doubt, you must have come across infographics on the internet. If you are someone who is a writer and find yourself writing content for infographics but not creating them yourself, you might want to use Infogram. Also, if you have been creating infographics yourself, now is the time to let a digital network handle the job for you.

Infographics are important for keeping users engaged with the content. However, creating one takes a while to master. luckily, Infogram is one of the many tools that handle this kind of task.

Infogram comes as a web app that supports an easy-to-use and beautiful user interface. Through its amazing platform, people get the chance to work out unique visual content for their write-ups and projects.

To get a better understanding of what this tool provides, we will take a closer look at some of its features.

  • Design

With its user interface, people can make out unique designs and use them anywhere on the web. Content writers are sure to find this handy and equally get the best out of it.

Through the tool’s design feature, people can begin designing not just infographics, but also reports, slides, dashboards, social media visuals, and unique maps.

Each design you create with Infogram comes in high quality. This kind of design quality is crucial for keeping your audience visually engaged as they absorb all of you the ideas you are trying to pass across.

  • Collaboration

Another feature of the Infogram tool is the ability to collaborate on design projects. This way, more than one person can work on creating a design to be used. If you are a content writer trying to create special designs for your content and also have got a partner, you both can work on this design together.

  • View Design Performance

With Infogram, you can track and keep up with the usage statistics of your designs. This gives you special insights into the engagement levels of those who are viewing your design.

By monitoring the performance statistics of your design, you stand a chance to become knowledgeable of the special designs that need improvements, as well as the ones which are thriving.

3. HubSpot’s Blog Topic Generator

As a content writer, you will find it easy to understand the fact that the topic of every write-up is as important as its content. To make things a lot easier, Hubspot has come up with a special tool that helps generate the topic for blog posts.

The HubSpot’s Blog Topic Generator comes as a handy tool for writers, which is sure to save them the trouble trying to figure out a topic for their post.

Hubspot also understands simplicity is a key factor that engages users. Due to this, the topic generator web app was built to offer writers a seamless and straightforward approach towards generating a topic for their blog post.

Using the web app is considered to be a very simple process. In the fields provided by the tool, users can input five keywords and then watch the tool generate many topics to be used as blog post topics.

4. Google Trends

Google Trends is another tool all writers need to be aware of. Just like its name, the service from Google is designed to provide people with the chance to stay up-to-date with the latest searches and trends.

Writers can personalize the kind of trends they receive, as this allows them to maintain the scope of their content easily. The tool offers writers a chance also to find out what things are trending in their region and also obtain stories based on categories.

With Google Trends, obtaining the latest updates on certain topics has been made easier. Another great thing about the tool is that it is free to use.

5. Feedly

Now, if you want to obtain content ideas without having to work too hard or engage in too much stress, Feedly is a web app that has got you covered. The tool is completely designed to fit content writers, as getting content ideas sometimes can become a challenge. If that ever happens to you, you could always have Feedly to back you up.

When looking at some of the best tools that are fit for content writers, Feedly is never left out of the picture. However, if you are finding it hard to obtain quality and accurate information as regards what kind of ideas you could use in your write-up, then Feedly could come into the picture.

What Freely Offers to Writers

The web app inspires unique ideas and news. If you are a writer, you can always find that browsing through many websites just to obtain a piece of information, as well as the latest news of events in the society, can be tougher than expected. Usually, this takes a whole lot of time to accomplish.

With Feedly, the matter is a little different and less time-consuming. Feedly obtains news from different websites for you. After gathering the news, it requires users to log in and use the news to create great content ideas.

But before being able to gather news from different platforms, users need to first select the sources and sort the news by topics. The amazing features of the web app have gotten it always to come in handy for writers to use.

Conclusion

Many content writers have admitted to the fact that writing is a tough job. When writing, you must consider ideas and factors that can make the task more efficient and easier to accomplish.

The above are 5 of the best tools and apps for content writers, which can greatly improve efficiency and simplicity. Today, using these tools can greatly enhance the way you work.

In conclusion, the above tools are considered the best not just because of their features, but also because of the high number of writers who use them. As a writer, you should take your time to try them out and watch your writing style receive a huge boost. Good luck.

Categories: Others Tags:

Programmatically Discovering Sharing Code With oEmbed

November 26th, 2019 No comments
Smashing Editorial

Programmatically Discovering Sharing Code With oEmbed

Programmatically Discovering Sharing Code With oEmbed

Drew McLellan

2019-11-26T11:00:00+00:002019-11-26T21:08:24+00:00

The web is full of services that host rich content such as videos, images, music and podcasts, maps and graphs, and all manner of different delights. Chances are, when you add your content to a site, it will offer you a way to embed that content in a web page somewhere else.

Sites like YouTube have their own embeddable player that is popular to use in blog posts and even product pages. Soundcloud has code for embedding their music player in your band’s website. Charity fundraisers might upload the route of their big race to a site like Strava, and want to share it on their fundraising site to show their sponsors.

All this is done by finding that Share option on the hosting site and copying out some code that is normally a mix of HTML and JavaScript. That code can then usually be pasted into the destination page, and the hosting site will present a rich representation of the content for all your friends, customers and contacts to see.

So far, so good, and this covers the option for the manual embedding of content pretty well. There is a distinct second use-case however, where the outcome is the same but the route to it is very different.

Sharing Programmatically

Let’s imagine you’re building an app or site that accepts content from a user. That could be something as simple as a basic intranet page for staff to share news with coworkers, or something massive like a whole social network where people can sign up and start posting.

In both cases, you need to work out what to do if the user adds a URL as part of that content. You can imagine the scenario:

Check out this video! https://youtu.be/jw7bRnFbwAI

At this point, as a publishing system, you need to figure out what to do. The first option is to do nothing, and just leave the URL as plain text. That’s not a brilliant idea, as users will generally want to click on the URL and plain text won’t help them get to the page at the other end.

The second option is to turn it into a link. That’s a good solid next step, as users can follow the link and get to the content. But in doing so, they leave your site and might not come back in a hurry.

The best user experience might be to be able to fetch the player for that content and embed it right there instead of just the URL. That would enable users to experience the content right within your site, much like they would on Facebook, for example.

This poses the problem. Given a URL, how can I turn that into the HTML/JavaScript embed code needed to show a rich player on the page?

If it’s a known site like YouTube, I could write some code that uses the YouTube API to fetch the video information and get or build the embed code that way. I could do the same for other video services like Vimeo and VIVO. I can write code to recognize Flickr and Instagram URLs and use their APIs to fetch nice embeddable versions of photographs. And the same for Twitter and tweets. But this is sounding like a lot of work!

What would be ideal is if there was a standardized way of getting from a URL of a piece of content to a block of embed code to show that content on a page. If you’ve been paying attention, you’ll realize that the answer to that is oEmbed.

The Origin Of oEmbed

This was exactly the problem Leah Culver had while working on Pownce (a truly innovative social networking site that was the Betamax to Twitter’s VHS). Pownce wanted to embed rich representations of content into a user’s update stream, but didn’t want to limit support to only the services they’d specifically written code to integrate with. At dinner with colleague Mike Malone, as well as Cal Henderson (who led engineering at Flickr — one of the major providers of such content at the time) and Richard Crowley, they together hashed out an idea for an open standard for getting embed code from a URL. Henderson went away and drafted something up based on the discussion, and oEmbed was born.

Using oEmbed

Here’s how it works.

It starts with the URL that points to a single item of content. That might be a YouTube video, an image, or whatever. Typically this will have been provided by a user of your site or app as part of some content they wish to publish. The first step is to fetch the content of the page at that URL, which should be an HTML page.

If the site hosting the content supports oEmbed, in the section of that page there should be a link element with an oembed content type:

<link rel="alternate" type="application/json+oembed"
  href="http://www.youtube.com/oembed?url=https%3A%2F%2Fyoutu.be%2Fjw7bRnFbwAI&format=json"
  title="Inclusive Components with Heydon Pickering" />

A note about XML: oEmbed supports responses in both XML and JSON format. For this article, I’m only considering JSON, because we’re not savages. If you’re in the unfortunate position to need to work with XML, be aware that it is a supported format with the oEmbed spec, although you may find that some providers only offer JSON responses.

This link tag as the rel attribute set to alternate and a type set to either application/json+oembed or text/xml+oembed. It’s this attribute that clues us into the fact that the URL given in the href is actually an oEmbed API endpoint for retrieving the details of the content.

That URL will have usually two parameters: url and format.

Parameter Value
url (required) The URL-encoded web address of the content item
format The format you’d like the response in. One of either json or xml

Common URL parameters for the initial consumer request

The full specification goes into much more detail here (and you should reference that if creating your own implementation) but these are the two parameters you’ll likely see the most.

So, we’ve got a URL, fetched the page, found an oEmbed link tag with another URL for an API endpoint. Next, we request that new URL, and that returns all the information the service has to provide about that piece of content.

{
        "author_name": "Smashing Magazine",
        "width": 480,
        "title": "Smashing TV: Inclusive Components with Heydon Pickering (Nov 7th 2019)",
        "provider_name": "YouTube",
        "height": 270,
        "html": "<iframe width="480" height="270" src="https://www.youtube.com/embed/jw7bRnFbwAI?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>",
        "provider_url": "https://www.youtube.com/",
        "thumbnail_url": "https://i.ytimg.com/vi/jw7bRnFbwAI/hqdefault.jpg",
        "type": "video",
        "thumbnail_height": 360,
        "author_url": "https://www.youtube.com/channel/UCSDtqcJ8ZXviPrEcj1vuLiQ",
        "version": "1.0",
        "thumbnail_width": 480
}

Now we’re talking! The response gives us lots of information about the content. The version should for the foreseeable future be 1.0, which is the current version of the oEmbed spec. The other information returned depends largely on the value of type.

Response Types

The value of the type key in the response tells you what sort of media you’re going to be embedding.

Value of type What to expect
photo A static photo that offers a url, width and height that can be used for a basic img tag
video A video player, with html specifying the code required to embed a player on a page, although with a width and height
link The best way to deal with this content is just to provide a link after all. The response might have other useful information like a title, but it should just be linked up.
rich Some sort of rich content player, which just like the video type returns html, width and height

Aside from dedicated video content, the more common type you’re likely to see in the wild is rich. Even Flickr itself, while still sending a photo response, also supplies html for a rich embeddable ‘player’ for the image, too.

Most of the time, embedding the content in your site is just a case of using the code provided as the html value.

A Note On Security

One thing you might be rightly cautious of is taking an HTML response and embedding it programmatically into a page you host. Without the human step to double-check the code you’re pasting in, there is always potential for that code to be malicious. As such you should take appropriate steps to mitigate the risk.

That might include filtering the URLs to make sure the schemes and domains match those expected, and sandboxing code into an iframe on a different, cookieless domain. You should access the situation in which you’re using the code and make sure that you’re not exposing your self to undue risk.

Getting Started

As important as it is to understand the process when using oEmbed, the reality is that most common languages have libraries available that abstract away the process and make it relatively simple.

For example, the npm packaged oembed provides a very simple interface for making a request based on the content URL and getting the oEmbed response back in return.

First install the package into your project:

npm i oembed

And then request the URL. Here I’m using the URL of a presentation on Notist that I gave about oEmbed. How very meta.

const oembed = require('oembed');
const url = 'https://noti.st/drewm/ZOFFfI';

oembed.fetch(url, { maxwidth: 1920 }, function(error, result) {
    if (error)
        console.error(error);
    else
        console.log("oEmbed result", result);
});

And the response:

{ 
        type: 'rich',
        version: '1.0',
        title: 'Understanding oEmbed',
          author_name: 'Drew McLellan',
        author_url: 'https://noti.st/drewm',
        provider_name: 'Notist',
        provider_url: 'https://noti.st',
        cache_age: 604800,
        thumbnail_url: 'https://on.notist.cloud/slides/deck4179/large-0.png',
        thumbnail_width: 1600,
        thumbnail_height: 900,
        html:
           '<p data-notist="drewm/ZOFFfI">View <a href="https://noti.st/drewm/ZOFFfI">Understanding oEmbed</a> on Notist.</p><script async src="https://on.notist.cloud/embed/002.js"></script>',
        width: 960,
        height: 540 
}

If you wanted to do the same in PHP, a handy package called embed/embed is available to install via Composer.

composer require embed/embed

And then in your PHP project:

use EmbedEmbed;

$info = Embed::create('https://noti.st/drewm/ZOFFfI');

$info->title; // "Understanding oEmbed"
$info->authorName; // "Drew McLellan
$info->code; // "<p data-notist="drewm/ZOFFfI"> ... </script>"

As you can see, with the use of a library the process becomes very simple and you can quickly get from a URL to the embed code, ready to show a rich representation of the user’s content.

Conclusion

oEmbed is a very elegant solution to a very specific problem. You’d be forgiven for thinking that only a few engineers working on big social networks would benefit from this, but in reality, publishing systems where a user might enter a URL are surprisingly common. Find me one back-end engineer who at some point hasn’t needed to build some kind of CMS. We may not think of it in the same terms, but if you accept user input, you should be thinking about what to do if that input contains URLs.

Now that you know about oEmbed (sorry) you’ve got no excuse not to give some serious consideration to how you handle URLs in your future projects.

(ra, il)
Categories: Others Tags:

The Popeye Moment

November 25th, 2019 No comments

Frank Chimero is redesigning “in the open” and we should pay attention to it because (1) we should listen to anything Frank has to say because he’s a great designer and writer and (2) working in public is awesome.

But the gut punch for me in this opening article is the way Frank pulls zero punches on the state of design writing:

Design isn’t alone in its lack of quality content—the web, by and large, has become a dumping ground for garbage. Most design content has become poor quality, surface-level content marketing that does more damage than good, because it offers over-simplified, misinformed perspectives dressed up as guidance. One hardly gets the sensation of lived experience and professional acumen in the words. When the experienced don’t write, grifters step in, feign expertise, and sell it.

Heck, I’m gonna incorporate that into the guest posting page right now.

Direct Link to ArticlePermalink

The post The Popeye Moment appeared first on CSS-Tricks.

Categories: Designing, Others Tags:

Playing Sounds with CSS

November 25th, 2019 No comments

CSS is the domain of styling, layout, and presentation. It is full of colors, sizes, and animations. But did you know that it could also control when a sound plays on a web page?

This article is about a little trick to pull that off. It’s actually a strict implementation of the HTML and CSS, so it’s not really a hack. But… let’s be honest, it’s still kind of a hack. I wouldn’t recommend necessarily using it in production, where audio should probably be controlled with native elements and/or JavaScript.

The trick

There are a few alternatives to playing sounds with CSS, but the underlying idea is the same: inserting the audio file as a hidden object/document within the web page, and displaying it whenever an action happens. Something like this:

<style>
  embed { display: none; }
  button:active + embed { display: block; }
</style>

<button>Play Sound</button>
<embed src="path-to-audio-file.mp3" />

View Demo

This code uses an tag, but we could also use with similar results:

<object data="path-to-audio-file.mp3"></object>

A quick note on the demo and this technique. I developed a small piano on CodePen just with HTML and CSS using this technique about a year ago. It worked great, but since then, some things have changed and the demo doesn’t work on CodePen anymore.

The biggest change was related to security. As it uses embed or object instead of audio, the imported file is subject to stricter security checks. Cross-origin access control policies (CORS) force the audio file to be on the same protocol and domain as the page it is imported into. Even putting the sound in base64 will not work anymore. Also, you (and users) may need to activate autoplay on their browser settings for this trick to work. It is often enabled behind a flag.

Another change is that browsers now only play the sounds once. I could have sworn that past browsers played the sound every time that it was shown. But that doesn’t appear to be the case anymore, which considerably limits the scope of the trick (and bares the piano demo almost useless).

The CORS issue can be worked around if you have control over the servers and files, but the disabled autoplay is a per-user thing that is out of our control.

View Demo

Why it works

The theory behind this behavior can be found buried in the definition of the embed tag:

Whenever an embed element that was not potentially active becomes potentially active, and whenever a potentially active embed element that is remaining potentially active and has its src attribute set, changed, or removed or its type attribute set, changed, or removed, the user agent must queue a task using the embed task source to run the embed element setup steps for that element.

Same goes for the definition of the object tag:

Whenever one of the following conditions occur:

[…]

  • the element changes from being rendered to not being rendered, or vice versa,

[…] the user agent must queue a task to run the following steps to (re)determine what the object element represents. [and eventually process and run it]

While it is clearer for object (the file is processed and run on render), we have this concept of “potentially active” for embed that may seem a bit more complicated. And while there are some additional conditions, it will run on initial render similarly as how it does with object.

As you can see, technically this is not a trick at all, but how all browsers should behave… although they don’t.

Browser support

As with many of these hacks and tricks, the support of this feature is not great and varies considerably from browser to browser.

It works like a charm on Opera and Chrome, which means a big percentage of the browser market. However, the support is spotty for other Chromium-based browsers. For example, Edge on Mac will play the audio correctly, while the Brave browser won’t unless you have the latest version.

Safari was a non-starter, and the same can be said for Internet Explorer or Edge on Windows. Nothing close to working on any of these browsers.

Firefox will play all the sounds at once on page load, but then won’t play them after they are hidden and shown again. It will trigger a security warning in the console as the sounds attempt to be play “without user interaction,” blocking them unless the user approves the site first.

Overall, this is a fun trick with CSS but one of those “don’t do this at home” kind of things… which in software development, means this is the perfect thing to do at home. ?

The post Playing Sounds with CSS appeared first on CSS-Tricks.

Categories: Designing, Others Tags:

Is There A Future Beyond Writing Great Code?

November 25th, 2019 No comments
Smashing Editorial

Is There A Future Beyond Writing Great Code?

Is There A Future Beyond Writing Great Code?

Ronald Mendez

2019-11-25T11:00:00+00:002019-11-25T13:07:03+00:00

Let’s do a quick exercise. Say you’ve been working professionally as a developer for more than five years. You’ve gained hands-on experience through dozens of projects and kept your skillset sharp by learning about new techniques, tools, and frameworks. You contribute to different libraries, routinely refactor the code you write, and periodically exchange code reviews with your colleagues.

But then someone comes up and asks you that one question you haven’t had the chance to figure out: Where do you see yourself, ten years from now?

You might be worried about the idea that if you continue down the same road, you’ll simply be an older developer who codes a bit better and a bit faster. Some developers are happy with this thought and simply can’t wait to continue down that road. But others might realize that this rollercoaster of lessons and growth you’ve been through is quickly shifting to cruise-control mode.

Once you feel you’re in complete control of your role as a developer, you start feeling the itch to do more. Not more of the same, but more personal growth instead. Maybe something different.

During the past few years of my career, I’ve been looking for answers. I got the chance to work with (and learn from) many successful developers who managed to transition into highly influential roles in which they make the most out of their technical background. Each of them explored a different path in which they were able to make an organic transition, based on a balance between their core skills and their complementary skills.

Where Can We Go From Here?

There are some new paths we can explore, that can force us to grow beyond our comfort zones and at the same time benefit from the skillset we’ve worked so hard to cultivate.

As developers, most of the articles we read, the programming books, and even the advice from our peers, are all tailored to help us to only focus on writing better code. Other than that, we’re not really taught how to work better or, to put it in a more philosophical perspective, how to evolve.

We usually have no clue about what comes after achieving the goals we set out for ourselves when we started our careers or if there’s even something we want to do other than coding eight hours a day, for the rest of our lives. It’s common to even underestimate our possible contribution to the team if we were to be doing something other than writing code in the near future. We’re not sure how we can make a bigger impact, even though our perspective and skills are definitely needed in more influencing positions.

Listen To The Industry

Back in 2008, when I started my career as a frontend developer, there wasn’t a person in the world who hadn’t heard of Mark Zuckerberg, the young programmer that became a millionaire while changing the way people communicate. Millennials began to romanticize the idea of legally getting rich while wearing a hoodie. Suddenly, almost every person from my generation wanted to become a developer.

Now, over a decade later, we’re starting to feel the true impact of this boom of coders. Through this year’s Stack Overflow Survey, we learned that more than two-thirds of respondents have less than ten years of professional coding experience.

We can clearly see that experienced developers with leadership skills are scarce, so now companies have to find creative ways to book their best talent in a way that they can oversee more junior developers and maintain the quality of work. This creates an organic leadership structure within growing teams.

The industry continues to grow at a rapid pace and so are our roles as developers. It has become more common to find directors and managers that started out as programmers, and companies are now opening up more leadership positions that require development backgrounds.

It’s safe to say that, even though programming was considered as the next blue-collar job, the role of the developer is growing into highly influential positions within organizations. But there is no written roadmap or proven formula to guide us through that transition.

What Are Some Of Our Options?

There came a point in my career in which I was asked the dreaded question about the future I envision for myself. I had no answer. In fact, it triggered even more questions that hadn’t crossed my mind.

I was already working as frontend lead so I had been given more and more responsibilities apart from writing code, which made me think of a possible future in which I probably wouldn’t be programming. The possibility of having more impact across different projects was definitely appealing.

So I set out to research what options could be interesting for my future. I looked at the path that some colleagues had taken in which they had successfully transitioned from the role of developers to important positions within the company. Most of the cases consisted of taking small steps and being in the right place at the right time. But overall, they all ended up involving themselves in these three main groups of activities:

  1. Managing teams and projects
    Leading a group of people into greatness sounds exciting, but it’s not easy. As seasoned developers, there are many options of growth that involve either managing a group of fellow developers as a team or managing projects across multi-disciplinary teams. Although it’s a highly rewarding option, it requires stepping away from the keyboard and learning to delegate, which can be very tricky for developers that are used to personally solving all of their problems.

    Moving on to a position in which we are in more control of the process and the team involved around it will most likely lead for the need of sacrificing the control we’re used to having when it comes to code.

  2. Mentoring and developing talent
    How many bosses have fantasized about cloning their top developers? In the real world, this is still not likely to happen, so smart bosses do the next best thing: they set up processes in which the savviest coders can actively pass along their knowledge to their peers.

    We have to keep in mind that even though some developers do this naturally in their day-to-day, it’s always more effective if senior developers are given a more formal role in which they can routinely allocate their time to work on the growth of their teams. This can be done with code reviews, workshops, and individual assessments with some colleagues.

  3. Being in the business of technology
    It’s very common to hear developers complain about how projects were pitched or defined when they were sold to clients. And, in most cases, it’s usually too late to complain.

    In my experience, I found myself happier working on projects in which developers had been involved during the sale. It’s always great to have a logical-minded ally flagging potential technical issues in a room where nobody else had a clue.

    The roles of consultants and technical directors are crucial in large digital projects. The involvement of developers in client workshops and drafting technical documentation at the start of any project can potentially be game-changers for the lifecycle of a project.

Working On A New Set Of Tools

Let’s say we want to continue to grow and want to embark on a future where we want to do more than just writing code. Once we have an idea about where we’re headed, it’s very likely that we may not yet be prepared for the leap. After all, we’ve just been focusing on acquiring skills that make us better developers.

Once we realize we have a lot to learn, we need to start working on the right set of skills. This time it will be different: we won’t be learning new languages, frameworks, or libraries. We’re going to need to stock up on skills that might have not felt important in the past, but are crucial for taking the next steps in these uncertain territories.

Communication

For anybody who has a job at any company, this would be a no-brainer. Communication is known to be the core of collaboration within any type of organization. Unfortunately, programmers have been given a free pass in this area for many years. The need to find logical-minded, hard-working, passionate individuals has allowed us to thrive without the need to really have great communication skills and even be a very socially awkward bunch.

If we have any aspirations to work with different teams and clients, it’s very clear that we will have to work on improving all aspects of our communication. One-on-one meetings, presentations, and important emails will all need to be carefully polished from now on.

Ownership

Having logical mindsets has impacted on the way we organize our work. As developers, we usually have a black-and-white sense of where our work begins and where it ends. This is positive when it allows us to have a clear understanding of the work that needs to be done by us, but sometimes prevents us from pushing our boundaries and working outside of our comfort zones.

The first order of business is to start taking ownership of all aspects of the work we’re involved in. By blurring the line that defines where a developer’s work ends, we’re able to take on new responsibilities and eventually transition into different roles.

Leadership

Wherever we’re headed in our careers, we’re going to need for our teammates to trust us. We’ll need them to know we’re headed in the right direction, even if for a moment it’s not totally clear.

In order to achieve this, we’ll need to be able to prove our knowledge, we’ll need to be confident in our decisions, and we will definitely need to be able to acknowledge our mistakes and quickly learn from them.

This is not a simple task and it’s not something you will be able to check off a list. It’s going to require our dedication for as long as we wish to continue growing outside the development bubble.

Get To Work

Once we’re sure we want to take a leap in our career, we have to start moving in the right direction. The first step would be to explore the options, decide which path you want to pursue, and see how that path aligns with your current role.

Does your company offer a space in which you could be a mentor or a manager? Do you think that there’s a chance of making it happen there or do you think you will need to continue your growth elsewhere? These are just some of the questions you have to ask yourself and will also lead to a conversation with some of your teammates and managers.

Taking a step in a new direction will require putting in the hard work, having an open mind, and being resilient enough to fail and try again, as many times as it takes.

(dm, il)
Categories: Others Tags:

How to make your website accessible using accessiBe

November 25th, 2019 No comments

If you own a website and you’re from the US (or even Europe), chances are you are exposed to a potential lawsuit if your website is not accessible.

The ADA or Americans with Disabilities act has brought forth web accessibility standards (WCAG 2.1 and section 508) that must be adhered.

Accessible websites are often ugly and expensive. The implementation is way too complicated, and in the end, the accessible website serves only a few. Imagine you can make your website accessible with just a few clicks. Wouldn’t you like to do that right away?

Those who rely on an AI-based solution like accessiBe will realize that an accessible website doesn’t have to be expensive, ugly, or complicated to implement. Let’s dig deeper into web accessibility and accessibe.

No design restrictions

Companies and organizations often face the problem that their corporate design cannot be implemented accessible. For example, because the design colors do not meet the minimum contrast requirements. The lack of perceptibility due to insufficient contrast, however, is a lack of accessibility that occurs most frequently. For example, people with visual impairment or color blindness cannot read the text. They are denied access to relevant information.

accessiBe allows the user to make individual settings regarding color, font, and presentation. Thereby accessiBe goes much further than what we often encounter with integrated font enlargement or color inversion.

Figure 1: accessiBe allows individual settings for colors and fonts.

Manageable costs

Accessibility can be expensive. For example, if you don’t consider accessibility at the beginning of a project. Subsequent corrections are costly. But court costs, lawsuits, and penalties are even more expensive if you exclude and discriminate against people due to a lack of accessibility.

But even if accessibility is an aspect that is considered in a website project right from the start, it can be expensive. Usually, manual tests by experts and persons with disabilities are required to identify and solve possible problems. It is, therefore, at least partly understandable that small companies or organizations, in particular, cannot afford to invest inaccessibility in the long term.

Anyone who has waived accessibility for cost reasons so far should take a closer look at accessiBe. The accessiBe solution starts at 490 dollars per year.

Simple implementation

Yes, accessibility requires specialists. And the problem often lies in the fact that the efforts for accessible websites and applications are not sustainable. Experience shows that accessibility decreases over time. Many accessibility deficiencies arise at the editorial level: new editors do not set alternative texts for images and graphics. Or they use incorrect formatting when creating new web content.

With accessiBe, you do not need to know how to code. accessiBe can be implemented with only a few clicks. The rest is done automatically in the background. More about that later.

Accessibility for everyone instead of just a few

The barriers that blind and visually impaired people encounter on the Internet are probably the most obvious. This often leads to the false assumption that accessibility serves only a tiny group of users. Wrong thought. Barriers on the web can affect anyone.

Because accessiBe allows individual settings with the user interface, accessiBe improves the usability and accessibility for everyone instead of only for a few.

How does accessiBe work?

accessiBe works in two ways. On the one hand, accessiBe adds a visible and navigable user interface to the website. Sighted users and mouse users click on the icon that website owners can add anywhere they want. Screen reader and keyboard users can access the interface by pressing the tab key.

Figure 2: Screenreader and keyboard users can access the accessiBe interface by pressing tab.

But accessiBe goes even further. As soon as the website operator has implemented the JS code (literally a single line of code), the AI behind accessiBe starts optimizing the website. This process usually takes up to 48 hours. accessiBe corrects any issues automatically. If a website cannot be operated with the keyboard, accessiBe corrects this error. If the required labels for Screenreader are missing in the form fields, accessiBe completes them. If there are images without alternative texts, accessiBe automatically adds a descriptive text. And to ensure accessibility, accessiBe repeats this process every 24 hours.

Figure 3: accessiBe is easily implemented.
Figure 4: Website owners only have to add a single line code.

What’s the catch?

Does all this sound too good to be true? Of course, there are limitations. For example, accessiBe cannot automatically create subtitles for videos or accessible PDFs. Also, accessiBe cannot simplify incomprehensible texts automatically. So, it still needs the editors’ and website managers’ awareness and cooperation. By automating the essential processes, accessiBe creates free resources for accessible content.

Are you not convinced yet?

You indeed also belong to those people who don’t believe anything they haven’t seen with their own eyes. On the website allerlay.ch, accessiBe is implemented for test purposes. There you get an insight into the interface and can also try out other functions such as keyboard navigation. Do you want to test accessiBe on your website? Then you can register here for a free trial. The good thing: You don’t even need to submit your credit card information to get started

Categories: Others Tags:

Transform Your Design with Unified UX

November 25th, 2019 No comments

Unless you’ve been hiding under a tinfoil hat for the last few years, you probably know that UX and UI are not the same thing because “UX is more ergonomic”, or some such nonsense. But what about the unified part? Normally speaking, I’ve got very little patience for hipster acronyms and nit-picking, but actually it turns out there’s more to this than fake specs and chai latte.

Imagine you’re standing outside two different coffee shops. They both sell pretty much the same coffee at pretty much the same price. How do you choose? Well I’ll bet you a unicorn frappe it’s not one specific thing that sways you, more a general “feeling” that “it’s better”. And you know what? That’s UX.

It’s probably time to rethink everything

It’s probably time to rethink everything. Experience has become much more important to users than product, and from a design perspective, this puts software in pretty much the same space as coffee shops.

For the service industry, each user-brand interaction is a touchpoint. It’s not important where or how that interaction happens: seeing the shop, opening the door, speaking to someone at the counter, whatever. The aim is to create a feeling of familiarity, ease and comfort for the target user.

Now imagine scaling that experience. Say you wanted to take your coffee shop into a mobile vending unit. How can you make sure that your users get the same feeling of comfort and familiarity that they had in the high street? That’s Unified UX.

The Broader Context

Unified UX is much more than a DLS or style guide. In fact, you’d be better off thinking about tools like Atlassian and Sketch as…well, tools, to help you achieve the broader aim of unity.

It’s more than responsive design and digital ecosystem too. If you’re still thinking in terms of “mobile”, “tablet” and “desktop” configurations, you’d do well to heed the words of design guru Cameron Moll who urges us to recognise that, for today’s users:

The best interface is the one within reach

Take the Galaxy Fold, for example: Phone, tablet, phablet or plain old monstrous? What about Echo, Dot and Alexa with no screen at all? Or Apple Watch? As Cameron points out in the same talk, the concept of “TV” has also become pretty loose. Do we mean the content, or the device it’s viewed on? Is “mobile” a noun, a verb or an adjective? How is a native app different from a mobile browser experience?

The point is, from a unified UX perspective, it doesn’t matter. The job of the UX team is to create that “brand feeling” across all platforms and in all facets of the design.

Take a look at Southwest Airlines’ “Virtual Booking Desk” from — wait for it — 1998; laugh all you want, but remember that back then, most people were completely new to the internet. Seeing a familiar scene gave users a sense of confidence, which is (still) integral to the Southwest brand.

What Goes in to Unified UX?

Everything!

It starts with deep awareness of the needs, expectations and current experience of the user. Watch people using your stuff. Talk to them afterwards about what it felt like. You’ll definitely learn something. If it’s a new project, do focus groups, then do some more. Co-create if you can.

From there, develop a design principles framework. The key concerns of your user group should shine through in every single aspect of their brand experience.

Broadly, there are two key concepts to unify:

  • Form and Function – Yes, you need both!
  • Data Symmetry – Data should follow users.

Here are some questions to consider:

Available Media

How do your users want to interact with the brand?

  • Android/iOS app;
  • Voice Interface;
  • Live Chat;
  • Bot;
  • SMS integration (very popular in the US);
  • Telephone/VOIP;
  • Video;
  • Print Media;
  • Face to Face.

A website doesn’t work for everyone!

Look and Feel

Does your framework include:

  • color;
  • shape;
  • imagery;
  • story;
  • art direction;
  • icons?

Do your choices work everywhere? How do you balance unity of UX and compatibility? How do you merge native OS elements with brand-specific ones?

Layout

Guide users to the content they’re looking for. Will their needs change across:

  • platform;
  • device;
  • time;
  • user journey?

How do you balance usability and unity of UX on small screens?

Interaction

Are some features device specific?

  • Camera;
  • Location Services;
  • Accelerometer;
  • Compass.

If so, is this what users want? How will interactive behavior transfer?

Responsive Behaviour

Remember the device continuum – it’s usually best to think in terms of

  • small;
  • smallish;
  • biggish;
  • big.

(Not specific devices.)

Tone

Important for:

  • Written copy;
  • Voice Interface;
  • Phone Help;
  • Face to Face;
  • Video;
  • Text or Automated Chat.

Does the tone need to change in certain situations:

  • errors;
  • call to action;
  • feedback/complaints;
  • specific user groups?

Are you using dated words like “click” when “tap” would be a better choice?

Continuation

If the user starts an interaction on one device and transfers to another, does their data follow them? If shopping cart items, elapsed time, favourites etc are consistent across interfaces, you’re doing it right!

Single Sign-On is one of those features that’s bound to make your users smile. With this in mind, are your protocols up to scratch? If you’ve got a native app, you need LDAP or similar, for example. Don’t try and use cookies! Is the backend architecture able to handle the load?

Development Environment

As you probably see by now, unified UX isn’t something you can do by yourself. The better organised your resource repository, the easier it will be to onboard new team members and maintain consistency. Consider:

  • Toolsets;
  • Documentation;
  • Coding and File Naming Conventions;
  • Standard Elements Repo.

Upgrades and Integration

How will you update legacy material and add new elements as the design evolves?

Who’s Doing it Well?

Yes, unified UX can be a pretty large and expensive undertaking, and even the giants still get it wrong. That said, here are some nice little highlights from a few unexpected places:

Spotify

No surprises here in terms of the company’s size, and sure, their UX is (arguably) pretty slick no matter where you find it. But what really caught my eye today is their commitment to their backend and support for third party developers.

This gives Spotify users enormous scope to enjoy a highly integrated, reliable and ever-expanding ecosystem that always feels the same.

Mailchimp

Not only do they have great cross device, cross platform consistency, their famously chirpy tone and loveable mascot are instantly relatable. What’s even cooler is that, when something goes wrong, the tone subtly changes.

This isn’t surprising because they have a really extensive style guide for new writers.

Linguee

Primarily a web-based translation application, their iOS app is a real favourite of mine. It not only offers dictionary-style definitions, but use-in-context translations as well, which really helps to avoid the classic google translate failures. It’s understandable at a glance on both small and large screens… and it’s free!

Good evidence that simplicity and functionality often win out.

Conclusion – Why Bother?!

Well, in a nutshell, because it’s what your users want. Yes, to really nail a unified experience is a big undertaking, particularly if you’re coming into an old project and dealing with legacy code, but the fact is, it’s the future.

The range of available devices is growing rapidly, and users want whichever one is closest. At the same time, we’re becoming more and more sensitive to experience, and less tolerant of inconsistency or nuisance. Smaller companies must find ways to provide the kind of unified experience that customers expect, or face being swallowed by giants.

As independent developers, it’s in our interests, and within our ability, to find ways to make UX unified.

Featured image via DepositPhotos.

Source

Categories: Designing, Others Tags:

Popular Design News of the Week: November 18, 2019 – November 24, 2019

November 24th, 2019 No comments

Every week users submit a lot of interesting stuff on our sister site Webdesigner News, highlighting great content from around the web that can be of interest to web designers.

The best way to keep track of all the great stories and news being posted is simply to check out the Webdesigner News site, however, in case you missed some here’s a quick and useful compilation of the most popular designer news that we curated from the past week.

Note that this is only a very small selection of the links that were posted, so don’t miss out and subscribe to our newsletter and follow the site daily for all the news.

Diez is Now Open Source

Internet World Despairs as Non-profit .org Sold for $$$$ to Private Equity Firm

The Logos of Starbucks, Google, and More Get Redesigned by a Bot

It’s Time to Stop Designing ‘Minimum Viable Products’

Web Dev Metrics

20+ Color Tools for Web Designers

Apple Built a $1 Trillion Empire on Two Metaphors. One is Breaking

Enhancing Clickable Area Size

The Aesthetic-Accessibility Paradox

14 Inspiring UX Designer Portfolios

Designers: Ignore Best Practices

Why the Best Design is Sometimes Invisible

What Animation Taught Me About UX Design

Illlustrations – Large Set of Opensource Illustrations

Microsoft Went all in on Accessible Design. This is What Happened

Video Game Console Logos

Macro Trends in the Tech Industry

Framer is Going Web Based with Multi-user Editing

How We Scaled Our Design System to Unleash Skyscanner’s New Brand

The Quest for Simplicity

Passwords are a Design Problem

Design Tokens Beyond Colors, Typography, and Spacing

Complex Search-Results Pages Change Search Behavior: The Pinball Pattern

Explore Dribbble’s 2019 Global Design Survey

Evolving by Design

Want more? No problem! Keep track of top design news from around the web with Webdesigner News.

Source

Categories: Designing, Others Tags: