Yandex Opens Up Content Distribution Platform “Yandex Zen” by @MattGSouthern

Search engine Yandex has launched a platform for content creation and distribution, which it calls Yandex Zen.The post Yandex Opens Up Content Distribution Platform “Yandex Zen” by @MattGSouthern appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


Google Enhances Knowledge Panels for Art-related Searches by @MattGSouthern

Google is catering to the art aficionados with its latest update to organic search results.The post Google Enhances Knowledge Panels for Art-related Searches by @MattGSouthern appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


Google AdWords’ Smart Bidding Sets the Ideal Bid for Each Auction by @MattGSouthern

In an effort to help AdWords users get the most out of their advertising budget, Google is introducing Maximize Conversions.The post Google AdWords’ Smart Bidding Sets the Ideal Bid for Each Auction by @MattGSouthern appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


My kind of contract

The work for hire terms at Segura, a design firm in Chicago. My three favorite bits: 1. “Time is money. More time is more money.” 2. “If you want something that’s been done before, use that.” 3. The pro bono amendments.You give me money, I’ll give you creative.I’ll start when the check clears.Time is money. More time is more money.I’ll listen to you. You listen to me.You tell me what you want, I’ll tell you what you need.You want me to be on time, I want you to be on time.What you use is yours, what you don’t is mine.I can’t give you stuff I don’t own.I’ll try not to be an ass, you should do the same.If you want something that’s been done before, use that.PRO BONOIf you want your way, you have to pay.If you don’t pay, I have final say.Let’s create something great together.For those who will be quick to point out legal holes or missing protections, there are many ways to do business. One way is working with clients you trust — people who appreciate this approach to work. And if you guessed wrong, and someone fucks you, rather than pursuing legal remedies which cost even more time, money, and hassle, there’s an alternative: Take your losses, wash your hands, and don’t work with them again.My kind of contract was originally published in Signal v. Noise on Medium, where people are continuing the conversation by highlighting and responding to this story.


Source: 37signals


Chicago, Be Chicago

Yuck! Enough with the Silicon Valley worship, Chicago!🎶Hey, Chicago, what do you say? Can we stop talking about wanting to be the next Silicon Valley today?🎶If you pay attention to the Chicago tech/media scene, you’ve probably been hearing for years that Chicago is poised to be the next Silicon Valley. The storyline continues in this recent Inc article: Why Chicago will be the next Silicon Valley tech hub.There’s a lot of good in this article. And we’re honored that Basecamp is held up as an example of something positive happening in Chicago. But the notion that it’s now Chicago’s time to grab someone else’s torch is where it falls apart for me.It’s certainly true there’s more entrepreneurial excitement in Chicago these days. More optimism, more opportunity, etc. This is great.But what’s with all this this fetishizing of Silicon Valley? To be next in line to be them? What about being us? What about being original? The Silicon Valley approach is original for Silicon Valley, but what’s our original approach? Something that’s expansive, rather than restrictive. Following someone else’s playbook is always limiting.Why not build something here that’s so fresh that eventually other cities want to model themselves after us? What would that look like? 10 years now we’d be far better off if other cities were saying “We want to be the next Chicago” than “Chicago is still trying to be like them”. Unfortunately today if you Google “The next Chicago” the first story is about how citizens in Richmond Virginia are afraid their town is becoming like Chicago.Some suggest Silicon Valley stands for innovation. Ok — I’m into that. But if we’re just trying to be like them, where’s the innovation in that? That’s the opposite of innovation. So to be innovative, we want to copy? That gets you to me-too, not us-instead.Further, why follow a playbook that leads to oppressive rents and a workaholism culture? A race towards pumped-up billion-dollar valuations rather than a thousand paying customers? Why salivate over so many profitless-revenue and unsustainable business models? Why build companies to be sold rather than ones built to prosper independently?What’s so unattractive about stability and make-more-than-you-spend economics? The economics the pizza shop, dry cleaner, autobody shop, and restaurant down the street live by? If they can survive like that — some for 25 years or more — why can’t a tech company with far more favorable cost structures?I get it. Rapid job creation. Pumping millions/billions into startups that are hiring is a quick way to show things are happening. But if we can’t build sustainable businesses built on solid fundamental economic principles, those will all be temp jobs. Long temp jobs, but temp jobs nonetheless. That’s a political move, not a purposeful move.Of course Silicon Valley has some wonderful success stories reaching back decades. No doubt — amazing things have been created there, and I admire and respect many of those stories. I’m a happy customer of a few of them for sure. But a successful Chicago doesn’t need to be predicated on the next Apple or Tesla being here. That’s limiting.Further, it’s too easy to assume that there’s a formula that any city can apply to generate those kinds of businesses. Specific inputs that always produce specific outputs. If we do what they’ve done, then we’ll get what they have. It doesn’t appear to work that way. Is it just a matter of eventually, or is it a matter of place and moment? That places are unique, and intangibles make the difference? That moments can’t be manufactured? That luck is the largest variable in the equation?Great places are unique places. New York is uniquely New York. San Francisco is uniquely San Francisco. LA is uniquely LA. New Orleans is uniquely New Orleans. New York isn’t like LA, and LA isn’t like San Francisco, and Seattle isn’t like Boston, etc. Silicon Valley didn’t become “the next whatever”, it developed into itself. New York isn’t striving to be Rome, it’s thrilled with being New York. But Chicago?If Chicago is going to follow anyone’s philosophical lead, let it be Simone Biles: “I’m not the next Usain Bolt or Michael Phelps. I’m the first Simone Biles.” That’s confidence. We could use more of that here.I remember the last time Chicago got frothy about the closest thing we’d had to a Silicon Valley success story: Groupon. The city rallied around it. Everyone hailed as the fastest growing company ever, and it raced to a $1 billion dollar valuation on waves of institutional investment. We celebrated around fastest growing, not profitable, not sustainable. And now just a few years later, you don’t hear many people talking about Groupon anymore — except when they need to show an example like the one below:(Full disclosure: I was on the Groupon board prior to them going public, but was asked to leave after a year.)And today, in 2017, guess who’s being touted as the fastest company to a $2 billion dollar valuation? Uptake, another Chicago company. I hope things turn out differently for Uptake than they did for Groupon.I hope Chicago avoids the trap. That we don’t get carried away by bullshit metrics, and wannabe stories. Rather, we build more sustainable, profitable companies. Companies that grow steadily and strong, not rapidly and weak. Companies that treat people exceptionally well, and create environments where people can do their best work of their lives — and have great lives at the same time.Chicago, be Chicago.Chicago, Be Chicago was originally published in Signal v. Noise on Medium, where people are continuing the conversation by highlighting and responding to this story.


Source: 37signals


Hiring a Growth Mindset

Been doing a lot of thinking around hiring these days as we gear up to grow our small team of 3 founders at Pinpoint and I’ve been reviewing my own personal notes from the past and updating them for my own use.
One of the things that I come back to time and time again is the power and importance of having a growth mindset when it comes to early-stage organizations.

The question, of course, is how do you know if someone does, in fact, have that type of mindset?
The short answer is that you don’t know until you work with them but you can ask penetrating questions when you chat with them to see if you can diagnose that intrinsic perspective in the person and candidate.
For a quick reminder, a growth mindset is best captured and understood as someone who believes that their talents can be developed (through hard work, good strategies, and input from others) as opposed to those who have a fixed mindset (talents are innate gifts). This is a philosophy that we’ve been trying to model for our kids as well, by the way…
Here are a few questions that I’ve got in my notes that might be useful, broken down into Growth and Learning:

How would this job fit in with your career aspirations?
What are your career, project, or personal goals for the next 6 months? How do you set goals for yourself?
What job do you hope to achieve in the organization in the next 3-5 years? What are you doing to prepare for it?
How have your responsibilities evolved from when you first started your current/recent role?
What accomplishment are you most proud of from the past year?
Describe a time when you’ve incorporated someone’s feedback into your work. What was the outcome?

Here are a few for Learning:

What is an area that you’re looking to improve upon in the next 6 months and what are you doing to improve it?
When was the last time you asked for help at your job? Describe the situation, how did you feel about asking for help?
How do you keep abreast of current trends and new information in your part of the business? How have you used this information to remain ahead of the competition?
Describe a time when your work required you to learn a new system, task, or body of knowledge. What was it like for you?

Many of these may provide some fruitful conversations and many of them may not, but, you can use them at your own discretion.
Finally, one of the things that I’m always on the look out for is whether or not the person is coachable; meaning, how open are they to receive coaching from others? And, how interested are they in coaching and mentoring (and there’s a difference in my book, by the way…) other folks?
Finding someone with this latent skillset is magical and means that we already have a pipeline of folks that can not only do an amazing job but who can grow with us as well.
The post Hiring a Growth Mindset appeared first on John Saddington.
Source: https://john.do/


These Features Will Take Your Online Community Engagement to the Next Level

You have a wicked cool technology product or service that people are clamoring to use. You are growing quickly and building your user base. And now that you have users, they want actual information and support…all the time.
So how  do you keep your users engaged and make sure they’re getting the information and support they need, when they need it?
Source: https://www.phase2technology.com/feed/


9 Secrets the Pros Use to Create Great Facebook Ad Copy

Writing great Facebook ad copy, like writing great books (or blog posts), is a craft. David Ogilvy was considered a master of his craft. He understood before anyone else the importance of writing a good headline, for that’s the first thing readers see and determines whether they read more. It was true in the age of Read more
Source: https://adespresso.com/feed/


9 Secrets the Pros Use to Create Great Facebook Ad Copy

Writing great Facebook ad copy, like writing great books (or blog posts), is a craft. David Ogilvy was considered a master of his craft. He understood before anyone else the importance of writing a good headline, for that’s the first thing readers see and determines whether they read more. It was true in the age of Read more
Source: https://adespresso.com/feed/


PHP Developer - We Are Envoy - Irvine, CA

CMS and opensource projects like WordPress, Joomla!, DrupalCoin Blockchain, osCommerce, etc. ENVOY is looking for a passionate, energetic web developer to work with emerging...
From We Are Envoy - Wed, 31 May 2017 17:51:17 GMT - View all Irvine, CA jobs
Source: http://rss.indeed.com/rss?q=DrupalCoin Blockchain+Developer


UI/UX Designer - Weill Cornell Medicine - New York, NY

Experience designing websites for the DrupalCoin Blockchain 7 Content Management System. Under direction from the Art Director and the Associate Director of Web Communications...
From Weill Cornell Medicine - Wed, 31 May 2017 15:52:49 GMT - View all New York, NY jobs
Source: http://rss.indeed.com/rss?q=DrupalCoin Blockchain+Developer


Influence — The Power of Free

A few weeks ago we walked by a comic book store and noticed it was Free Comic Book Day, an event where comic book publishers provide… What else? Free comic books. My 3 year old daughter has expressed interest in learning about comics so we thought we’d check it out.It was a great experience. Line wasn’t long. And they gave out 3 free books per person. Not a bad haul for Free.I recognize the goal here. Give people a free taste and they’ll want more down the road.Or maybe some will come for the freebies and buy something else out the door. But I didn’t see enough people buying anything as they left….Dr. Robert Cialdini is the famous author of books on influence and persuasion. One interesting chapter in his book Influence is on the power of “reciprocation”.Dr. Cialdini describes the Hare Krishnas, a religious organization that was having trouble in the 1970s raising money. Their original method of asking people for donations in busy places like airports and bus terminals wasn’t working.Then they experimented with giving folks a simple free gift: a book, magazine, or even a flower. They wouldn’t accept you returning the gift either. As Cialdini reports, a Krishna would simply say, “No, it is our gift to you.”The Krishna’s ability to raise donations skyrocketed.People couldn’t resist the power of being indebted to someone else’s gift.In 2013 I was looking for opportunities I should pursue with Draft, the writing software I developed. I saw that Tim Ferriss was holding a “contest” to invest in a single company as part of something he called Spearhead Capital. That single company would get a large amount of his attention and resources.I thought Draft would be a good fit. If nothing else, it wouldn’t hurt to be on Tim’s radar.I came up with an idea to message the free users of Draft to let them know I could use their help Tweeting @ Tim about me and Draft.They did. A lot.Now, I don’t really recommend creating a Tweetstorm like this. It’s a good way to upset someone who actively uses their @ mentions for communication.But, this effort resulted in a long and super helpful phone call with Tim and an acquaintanceship with Tim that’s lasted since.The real lesson though to take from this was how powerful it was to ask my free users for help with something. They instantly gave me this huge gift.Back at that comic book store I noticed that the employees there might have been overlooking reciprocation. As people walked out the door with their free comic books, no one asked if they needed anything else. Even a simple “could I help you find something else” would have probably gotten me to purchase a new Batman or Spider-Man.This lesson isn’t lost on me. Here at Highrise we have quite a few people who use our Free plan. There’s probably at least a simple ask we could make of them to help spread the word about Highrise.And I bet there’s something simple you’ve done for folks or could easily implement to help get the power of reciprocity working for you.P.S. Please help spread this by clicking the ❤ below.You should follow my YouTube channel, where I share more about how we run our business, do product design, market ourselves, and just get through life. And if you need a no-hassle system to track leads and manage follow-ups you should try Highrise.Influence — The Power of Free was originally published in Signal v. Noise on Medium, where people are continuing the conversation by highlighting and responding to this story.


Source: 37signals


How to Use Tokens in DrupalCoin Blockchain Fields

Token is one of the 3 most popular modules in DrupalCoin Blockchain.

It allows you to use small placeholders to automatically complete tasks.

To take a simple example, if you put [site:name] on your site, it will be replaced by the actual name of your site. To take a more complicated example, you can use Token together with the Pathauto module to automatically create URL patterns for your whole site.

[[ This is a content summary only. Visit http://OSTraining.com for full links, other content, and more! ]]
Source: https://www.ostraining.com/


How to Growth Hack Your Keyword Research in 6 Steps by @thewillrobins

Aligning your revenue goals with keyword research yields amazing results. Here's how to hit your business and SEO goals.The post How to Growth Hack Your Keyword Research in 6 Steps by @thewillrobins appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


How to Growth Hack Your Keyword Research in 6 Steps by @thewillrobins

Aligning your revenue goals with keyword research yields amazing results. Here's how to hit your business and SEO goals.The post How to Growth Hack Your Keyword Research in 6 Steps by @thewillrobins appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


Animating Single Div Art

When you dig deep with your tools, it is amazing what you can create out of the most basic of HTML. I have been constantly impressed with "Single Div Art" by Lynn Fisher and others where you take a single generic <div> to create a beautiful cactus, Alamo, or panda.
See the Pen #dailycssimages 01: Bear Cub by Lynn Fisher (@lynnandtonic) on CodePen.
It can be hard to jump in and deconstruct how these are made, due to the fact they are using layers of background gradients, box shadows, text shadows, and more in the midst of just a single div and it's ::before and ::after pseudo-elements. Before we go any further… check out Lynn Fisher's article on why and how she started working with single div art.
One thing that single div pieces rarely do is animate. If you can transform your div or one of its pseudo elements, that's fair (as Lynn Fisher does with her fantastic BB-8). But you cannot directly change the opacity or transform of the individual "elements" you create inside your div, since they are not actual DOM elements.
I am a big believer of trying something a little different and interesting to learn tools you otherwise might never learn. Working with the constraints of a single div might not be great for production work, but it can be a great exercise (and challenge) to stretch your skills in a fun way. In that spirit, we'll use this technique to explore how Custom Properties (CSS Variables) work and even provide us a path to animation inside our div. To illustrate along the way we will be breaking down the following example with multiple animation approaches:
See the Pen Single Div Accordion (Animated with CSS Variables) by Dan Wilson (@danwilson) on CodePen.
This accordion (the instrument, not the UI construct) has three main parts, the keyboard side (our div), the bellows (the part that squeezes, which is the div::before), and the button side (div::after). Since the accordion naturally divides into these pieces, we can transform each piece inside CSS Keyframe animations to get our animation started. The bellows are going between different scaleX values and the two sides are using countering translateX values to move with the scaling bellows. Thus, the squeezebox is born.
See the Pen Single Div Accordion Breakdown: Transforms by Dan Wilson (@danwilson) on CodePen.
Organizing the <div> with CSS Custom Properties
Animating and thinking about the three big pieces is more straightforward than thinking about what appears inside. It can be helpful to group and name the individual bits inside the div, and Custom Properties provide us a native way to do this. Instead of levels of seemingly infinite linear gradient stops, you can define the -white-keys and --black-keys for a piano keyboard. Instead of a cross-section of multiple layered gradients you can have a --tea-cup with its individual --tea-bag and a related --tea-bag-position defined inside.
The left side of the accordion boils down to:
background:
var(--shine),
var(--shine),
var(--button-key1, var(--button)),
var(--button-key2, var(--button)),
var(--button-key3, var(--button)),
var(--black-keys),
var(--white-keys),
var(--keyboard-base);
Those variable values might be several lines long (even hundreds), but conceptually how the layers of the keyboard come into play are clearer thanks to the variables.
See the Pen Single Div Accordion Breakdown: Keyboard by Dan Wilson (@danwilson) on CodePen.
While the same can be done with Sass or Less, Custom Properties allow us to modify these values in the future. We can now conceptually think about animating just our --button-key2 or the accordion's decorative --shine. There are a few ways to tackle this.
Animating Large Property Values with CSS Keyframes
The first way is to use CSS keyframe animations to change the property that contains the piece you want to move. If you want to change something inside your background (say, for example, we want to change the color of our "shine" lines from red to blue), you can set swap out values in the background property. Building on the previous code sample:
div {
/* using background definition from earlier */
--shine: linear-gradient(to right, transparent 29.5%, red 29.5%, red 70.5%, transparent 70.5%);
--shine-blue: linear-gradient(to right, transparent 29.5%, blue 29.5%, blue 70.5%, transparent 70.5%);
animation: modify-shine 2000ms infinite alternate ease-in-out;
}
@keyframes modify-shine {
100% {
background:
var(--shine-blue), /*these two replace the original --shine*/
var(--shine-blue),
/* the rest of the background remains unchanged */
var(--button-key1, var(--button)),
var(--button-key2, var(--button)),
var(--button-key3, var(--button)),
var(--black-keys),
var(--white-keys),
var(--keyboard-base);
}
}
This give us a lot, especially since background is animatable (as are text-shadow and box-shadow). In this example there would be a transition from red to blue.
If your property is long, this can be hard to maintain, though Custom Properties can give us a help by extracting out the parts that don't change to minimize the repetition. We can take it further by abstracting out pieces that don't need to animate into a new variable - resulting in levels of variables:
div {
--static-component:
var(--button-key1, var(--button)),
var(--button-key2, var(--button)),
var(--button-key3, var(--button)),
var(--black-keys),
var(--white-keys),
var(--keyboard-base);
background:
var(--shine),
var(--shine),
var(--static-component);
}
@keyframes modify-shine {
100% {
background:
var(--shine-blue),
var(--shine-blue),
var(--static-component);
}
}
The three musical notes in the accordion are based on this approach by animating text-shadow.
See the Pen Single Div Accordion Breakdown: Music Notes by Dan Wilson (@danwilson) on CodePen.
Animating with Custom Properties inside CSS Keyframes
A related way to change states is to directly change the custom property inside the keyframes.
@keyframes {
0% {
--button1-color: var(--color-primary);
}
100% {
--button1-color: var(--color-secondary);
}
}
A custom property has no predefined behavior and is not a useful property until it is used with var(…), so the spec states changing one's value will cause it to flip its value at 50%. This is the default behavior for all CSS properties that are not animatable and means it will not transition between the values.
You may have guessed since I already mentioned the spec that this is not available in all browsers. Currently, this is supported in Chrome and Opera only.
This will be a quick way to get jump states when it is supported across browsers. If you are viewing this in Chrome or Opera, the accordion uses this approach to animate the keys on the keyboard and the buttons on the right side. For a smaller example, here is a "Pixel Art" example using this approach where the eyes and eyebrows will move in Blink browsers. Other browsers will nicely fall back to a static image. This is in many ways will use the least amount of code, but will have the least amount of support.
See the Pen Pixel Art Animated with Custom Properties by Dan Wilson (@danwilson) on CodePen.
Animating Custom Property Values via JavaScript
A third method is to use JavaScript to set new property values directly (or apply classes that have different property values). In its basic form, this could be a call to setInterval to toggle an on/off state for a value (for our piano this could be a key pressed or not).
var div = document.querySelector('div');
var active = false;
setInterval(function() {
active = !active;
div.style.setProperty('--white-key-1',
'var(--white-key-color-' + (active ? 'active' : 'default') +')')
}, 1000);
With the corresponding CSS:
div {
--white-key-1: var(--white-key-color-default);
--white-key-color-default: #fff;
--white-key-color-active: #ddd;
/* And a linear gradient that follows the following pattern */
background: linear-gradient(to right, var(-white-key-1) 5%, var(--white-key-2) 5%, var(--white-key-2) 10%, ...);
}
See the Pen Single Div Piano Keys by Dan Wilson (@danwilson) on CodePen.
We are using JavaScript to set the white-key-1 to be either the value from the variable white-key-color-default or white-key-color-active depending on its state.
This method is useful when toggling something on and off (such as with a direct change in size, position, or color). This is how the buttons on the right side of the accordion are animated (as a fallback when the Keyframe approach is not supported).
See the Pen Single Div Accordion Breakdown: Right by Dan Wilson (@danwilson) on CodePen.
Each of the nine buttons has CSS uses the following default circle, where --color1 is a light blue and --button-dim is 1.4vmin:
--button: radial-gradient(circle,
var(--color1) var(--button-dim),
transparent var(--button-dim));
If i want to change a specific button later to a "pressed" state I can set up a specific value in the CSS, for example the fourth button:
--button4: radial-gradient(circle,
var(--button4-color, var(--color1)) var(--button4-dim, var(--button-dim)),
transparent var(--button4-dim, var(--button-dim)));
This property is similar, but it replaces the --button-dim and --color1 with values that are specific to this button combined with a default value inside the var(). This default value can be specified in our variables by using the form var(--my-specific-variable, 13px). We can take it a little further and even use another variable value as our default, e.g. var(--my-specific-variable, var(--my-default-variable)). This second form is what our previous code example uses to create a specific definition for our fourth button while keeping its default value the same. If you have buttons you want to remain unchanged, they can use the default --button property in a different background-position.
In the accordion example, --button4-color or --button4-dim are never explicitly defined in the CSS. So when loaded they use the default values of --color1 and --button-dim. The JS ultimately modifies the values and creates our on/off animation.
var enabled = false;
setInterval(function() {
enabled = !enabled;
div.style.setProperty('--button4-dim', enabled ? '1.2vmin' : 'var(--button-dim)');
div.style.setProperty('--button4-color', enabled ? 'var(--color1alt)' : 'var(--color1)');
}, 1000);
This will give us behavior similar to changing the Custom Properties directly in a keyframe where values jump from state to state with no transition. As we've already discussed, background and the *-shadow properties are animatable (and transitionable… not in a high performance transform or opacity kind of way… but in small uses that can be okay).
If we take our current JS on/off approach and combine it with a CSS transition on the background, we can get a transition instead of a jump state.
div {
transition: background 2000ms ease-in-out;
}
Combining with requestAnimationFrame
Depending on how your individual components are composed, the ability to transition the property may not be possible. If you want to move something, you might need to look to requestAnimationFrame.
One of my favorite Single Divs out there is a backpack by Tricia Katz:
See the Pen Single Div Backpack by Trish Katz (@techxastrish) on CodePen.
I would love for that zipper to move back and forth. With a single custom property to represent the zipper's x position we can reach for requestAnimationFrame to change that value and move the zipper right and left.
See the Pen Single Div Backpack with CSS Variables for Animation by Dan Wilson (@danwilson) on CodePen.
Conclusion
There are several approaches to animating inside a div that can stretch your skills. To get the broadest support we can't rely on CSS alone right now, though we can still get pretty far. Custom Properties make modifying values more direct, even when we need to combine with JavaScript (and we can lean on our variable naming to be clear what we are changing).
See the Pen Single Div Animation Options by Dan Wilson (@danwilson) on CodePen.
Whenever you want to learn a new thing in CSS or JavaScript… see if you can find a "Single Div"-esque way to learn it. When you need to conceptually break properties apart or animate complicated values, Custom Properties can bring something new to the table.

Animating Single Div Art is a post from CSS-Tricks
Source: CssTricks


How Can I Make My Icon System Accessible?

Here's a question I got the other day?
Would you suggest icon fonts or inline SVGs for a complex single page application? And are there specific accessibility concerns for either? Accessibility is especially important for us because schools use our products. I ask because we are currently in the process of unifying and setting up an icon system.

I don't think I would make the choice based on what "kind" of website I was building, so let's ignore that part of it.
I also think SVG icon systems are just better than icon fonts, so let's assume that.
The accessibility question is the interesting bit, so let's cover that.
There are two ways an icon might be used:

Standalone: icon needs to convey meaning all by itself
Decorative: icon is just visual sugar - the words around it convey the meaning.

Pattern for Standalone Icons
I'm adapting this from Accessible SVGs by Heather Migliorisi
<!-- role="img" so that the SVG is not traversed by browsers that map the SVG to the "group" role -->
<!-- aria-labelledby pointing to ID's of title and desc because some browsers incorrectly don't use them unless we do -->
<!-- if you are using a <use>-based icon system, this would be a <symbol id="unique-id"> below, but otherwise the same -->
<svg role="img" viewBox="0 0 100 100" aria-labelledby="unique-title-id unique-desc-id">

<!-- title becomes the tooltip as well as what is read to assistive technology -->
<!-- must be the first child! -->
<title id="unique-title-id">Short Title (e.g. Add to Cart)</title>

<!-- longer description if needed -->
<desc id="unique-desc-id">A friendly looking cartoon cart icon with blinking eyes.</desc>

<!-- all the SVG drawing stuff -->
<path d="..." />
</svg>
Pattern for Decorative Icons
Remember the idea with a decorative icon is that if it wasn't there at all, it wouldn't matter. So, we hide it from AT:
<button>
<svg aria-hidden="true" viewBox="0 0 100 100">
<!-- or <use>, if using a <symbol>-based icon system -->
<path d="..." />
</svg>
Add to Cart
</button>
But... icons might be used either way.
Right. So you probably should prepare your icons such that they are ready to be used as standalone, meaningful icons. Then, if they are used in a decorative context, slap aria-hidden="true" on the <svg>.
So your icon system might manifest like...
<Icon icon="icon-cart.svg" standalone="true" />
or
<?php
$standalone = false;
include("icon-cart.php"); // SVG with PHP logic sprinkled in
?>
or
<%= render "icon/cart", :locals => {:standalone => true} %>
or whatever.
Let's say you have to go with icon fonts though.
Things happen.
So much icon font usage is like this:
<i data-icon="a"></i>
Or a variation, like it's using "Private Use Area" for the attribute value or generates unique class names for each icon or whatever:
.icon-camera:before {
content: "e90f";
}
To make a standalone icon, that's pretty easy, you just put aria-hidden="true" on the element.
If you need a meaningful standalone icon, that means more HTML. From Bulletproof Icon Fonts, this is the recommended structure:
<span class="icon-fallback-glyph">
<span class="icon icon-hamburger" aria-hidden="true"></span>
<span class="text">Menu</span>
</span>
Now the icon itself is hidden (because it uses a weird meaningless font), but there is real text there that can be read as expected by AT. You can hide the text visually as well. Assuming you have some feature testing in place here's the CSS that hides/shows as needed:
.icon-fallback-text .icon {
display: none;
}
supports-fontface.supports-generatedcontent.icomoon .icon-fallback-text .icon {
display: inline-block;
}
.supports-fontface.supports-generatedcontent.icomoon .icon-fallback-text .text {
clip: rect(0 0 0 0);
overflow: hidden;
position: absolute;
height: 1px;
width: 1px;
}
Remember linked icons too!
If an icon (any of these ways) is a link, make sure there is either regular HTML text in there that clearly announces what it does, or, you provide an aria-label that does:
<a href="link" aria-label="See Picked Pens">
<svg>
<use xlink:href="#icon-codepen"></use>
</svg>
</a>

How Can I Make My Icon System Accessible? is a post from CSS-Tricks
Source: CssTricks


Addressing Similar Content: When to Canonicalize, Noindex, or Do Nothing by @@joshuacmccoy

How do you address similar content: canonicalize, noindex, or do nothing? Let's look at when to use these options.The post Addressing Similar Content: When to Canonicalize, Noindex, or Do Nothing by @@joshuacmccoy appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/


Floating Labels are Problematic

I feel like all these issues are handleable, but the damning issue is #3: they need space to move into. Labels can't go away and need to be readable at all times, so a floating label pattern doesn't actually save any space. You could have just put the labels where they float to to begin with. It's still a neat effect, but it doesn't buy you anything and may just cost you something.
Direct Link to Article — Permalink
Floating Labels are Problematic is a post from CSS-Tricks
Source: CssTricks


Top 10 WordPress SEO Mistakes That Beginners Make by @josephhhoward

Avoid these WordPress on-page optimization mistakes and you'll be on your way to more visibility in the SERPs!The post Top 10 WordPress SEO Mistakes That Beginners Make by @josephhhoward appeared first on Search Engine Journal.
Source: https://www.searchenginejournal.com/feed/