I was going to add a CodePen logo but there is already one in there at 375 Bytes. I’ve got one at 208 Bytes, based on a logo update David DeSandro did for us a couple years back.
Math.random() is an API in JavaScript. It is a function that gives you a random number. The number returned will be between 0 (inclusive, as in, it’s possible for an actual 0 to be returned) and 1 (exclusive, as in, it’s not possible for an actual 1 to be returned).
Math.random(); // returns a random number lower than 1
This is incredibly useful for gaming, animations, randomized data, generative art, random text generation, and more! It can be used for web development, mobile applications, computer programs, and video games.
CodePen Embed Fallback
Whenever we need randomization in our work, we can use this function! Let’s look at eight different ways we can use it. These examples are all from different authors doing something interesting with this API.
Animation
CodePen Embed Fallback
To spawn an object and animate it, we use Math.random. The neon lines form spontaneous hexagons but randomization is also in its generative sparks.
Computer-generated music
CodePen Embed Fallback
This program takes the traditional melody of “Auld Lang Syne” and plays random notes from it in piano. A change package is created from the count data and a random number is generated to select a value. The octave is also randomly selected.
Display a random image
CodePen Embed Fallback
Images are stored in an array. A number is generated and multiplied by the number of images in the array via array.length. Then Math.floor rounds the value to a round number and sets the image src in the HTML when the page is loaded or the button is clicked.
Random background color
CodePen Embed Fallback
This is where the magic happens:
const random = (min, max) => {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
The first line of code randomly shuffles the array and the second line returns a random umber between 0 and 10. In the example of a random color background, the range of colors and specifics such as hues, saturations, and shades can be set.
For another method for generating a random hex color, check out this article by Chris Coyer.
Generative art
CodePen Embed Fallback
In this morphing fractal curve, Math.random is used twice to set the colors for the gradient and once more for the max radius of the curves. This is a great way to construct an entirely new appearance with every iteration!
Word generator
CodePen Embed Fallback
We replace the header with a randomly selected word from an array using Math.random:
var word = words[Math.floor(Math.random() * words.length)] + "!";
This is a lot like the random image example — the perfect sort of practice for beginners!
API key generator
CodePen Embed Fallback
Here’s a super real-world practical use case for random numbers! The demo generates 16 random numbers to create a universally unique identifier (UUID) that can be used as a key that provides access to an API.
Text scramble
CodePen Embed Fallback
A few phrases are stored and displayed in sequence, separated by an animation that appears to scramble the letters with random characters between phrases that are selected by Math.random.
Rock Paper Scissors
CodePen Embed Fallback
In this childhood classic game of Rock Paper Scissors, Math.random is used to generate a randomized move for the computer playing as the opponent. It makes a pick from the three available moves.
Strong Password Generator
CodePen Embed Fallback
This password generator uses Math.random to get a password array filled with uppercase and lowercase letters then adds random digits to the generated password. This is another great practical example!
A couple of notes…
It’s possible you have questions after seeing Math.random in these examples. There are a couple I see come up often…
Is Math.random() really random?
Not exactly. Math.random() returns a pseudo-random number. This algorithm is called a pseudo-random number generator (or PRNG). This means its randomization can be reproduced under certain circumstances.
The randomization is based on the algorithm xorshift128+, which is likely running on your browser.
So, it’s random-ish.
How do you handle repeated values?
There are many methods to achieve unique values without repetition. The Fisher-Yates is one great way to prevent getting the same number twice by shuffling the sequence. Math.random will select a value from the shuffled array of a finite sequence demonstrated by the code snippet below.
function shuffle (array) {
var i = 0
, j = 0
, temp = null
for (i = array.length - 1; i > 0; i -= 1) {
j = Math.floor(Math.random() * (i + 1))
temp = array[i]
array[i] = array[j]
array[j] = temp
}
}
Is Math.random() the same as WebCrypto?
As you’ve seen from this article, Math.random() is awesome! However, if you dealing with sensitive applications and need a more secure method of randomization, I’d recommend WebCrypto. Reasons you may want to use WebCrypto include temporary verification codes, random password generation, randomized lottery numbers, etc.
If you need randomization for the purposes of cybersecurity, cryptography, or statistics?, ?use the function window.crypto.getRandomValues and check out Mozilla’s documentation on the WebCrypto API.
2020 has been an interesting year, to say the least. And although I’m sure many of you can’t wait until the calendar flips ahead to 2021, it doesn’t look as though we’re going to be able to say goodbye to 2020 so easily. Many of the changes we’ve had to make this year are now expected to stay with us — a least for the following year.
The latest research gives us some hints about what’s to come.
If you want to start preparing for 2021 now, then these reports and surveys from organizations like 99designs, Upwork, Content Marketing Institute, and McKinsey & Company are a must-read:
1. 99designs Reports on the Common Challenges Freelancers Faced in 2020
I don’t want to make 99designs’s Design Without Borders 2020 report sound like it’s all doom-and-gloom. Because it’s not.
That said, 2020 has been a rough year and it would be irresponsible for me not to acknowledge the challenges that all of us freelancers have encountered this year. This report is one of the few I’ve found that includes data on the major challenges freelancers have dealt with this year, including:
36% have struggled to maintain a steady flow of work or a stable client base;
27% had clients who cut their business budgets and, consequently, their freelancers’ workloads;
26% had at least one project cancelled or indefinitely paused;
22% have been ghosted by at least one client.
Beyond working more hours and hustling to find new clients all the time, what else can freelancers do to weather a business disruptor like COVID-19? There are a number of things.
For starters, it would be really helpful to have a crisis management plan for your finances. It would also be beneficial to refocus your efforts on finding clients who pay for the value you provide and not for the hours you spend building websites. Clients who see the value in what you do will be less likely to ghost or drop you at the first sign of trouble.
2. Upwork’s Survey Reveals Educational Opportunities for Freelancers
Upwork commissioned Edelman Intelligence to put together its very first Freelance Forward survey. The goal of the ensuing report was to shed light on the state of freelancing, how the pandemic has changed it, and what we can expect in the future as a result.
One of the data sets I think web designers should pay close attention to is this:
According to this survey, freelancers only spend about 52% of their time on billable work.
Now, one of the reasons why entrepreneurs and enterprise companies make so much money is because tasks are relegated to different team members. For instance, if a design agency owner is good at building relationships with prospects, they’re going to spend time on sales calls and managing social media. The day-to-day admin tasks would then get offloaded to virtual assistants and billable project work would go to designers, developers, writers, and so on.
But as a freelancer, you don’t have the ability to delegate and scale when you’re working solo.
Rather than burn yourself out trying to handle all these things yourself, the report suggests there’s something else you can do:
Although freelancers recognize how important soft skills and business skills are, the first data set suggests that not enough attention might be paid to them.
What I suggest is that you take a look at the division of your work hours. If you’re spending less than half of your time on billable work, it might be a good idea to strengthen your non-design skills. That way, things like marketing, contract preparation, and client management won’t consume so much of your time in the future and you can bill more.
3. CMI’s Annual Report Reveals Profitable Opportunities for Web Designers
Content Marketing Institute’s annual B2B Content Marketing Report is, once again, chock full of useful tidbits about the state of content marketing.
While a lot of the data is focused around marketing organizations and how they’ve pivoted during the pandemic, I thought this bit of info would be really helpful for web designers:
For those of you who design B2B websites, take note of where these companies plan to invest in 2021. If 2020 has been particularly hard on you, or you simply want to expand your horizons, there are some other opportunities worth jumping into:
B2B Marketing Investment => Web Designer Opportunity
Content creation => Blog graphic design, infographic design, and schema markup creation
Website enhancements => Website redesign, website audits
Content distribution => Social media ad design, Google ad design, schema markup creation
Getting to know audiences better => UX research, UX design
Customer experience => Chatbot/live chat development, support portal creation
4. McKinsey B2B Analysis Suggests That Digital Is Here to Stay
For those of you who’ve worked for a B2B sales organization before, you know how important in-person interactions are to them. It’s not as though they can just sell their products or services online the way B2C ecommerce companies can. The key to B2B success is through customer (and partner) relationship building.
Prior to 2020, this meant lots of in-person meetings, phone calls, and emails. But something has changed this year, on both sides of the fence.
This chart from McKinsey suggests that digital relationship building and customer service aren’t just a temporary solution for COVID-19. B2B decision-makers are coming around to the idea that this is going to be their “next normal” (as McKinsey refers to it).
These new “go-to-market models” include the following:
Talk to prospects, customers, and partners via video calls;
Digital self-service options for customers who prefer the DIY method.
As a web designer, you can help your B2B clients level up their efforts to achieve this next normal.
For starters, you can integrate scheduling into their websites. This’ll empower prospects to schedule video meetings (for demos, discovery calls, etc.) with your clients’ sales teams.
Another thing you can do is build out self-service elements like live chat or chatbots, FAQs pages, knowledgebases, and support portals. As consumers become more confident with doing business online, these self-service options will make a world of difference in their experience with brands.
Wrap-Up
I know, I know. 2020 sucked. But at least we have a good amount of research and experience that gives us a much clearer idea of what we’re getting ourselves into with the coming year. (At least, I hope so.)
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.
How to Make a Cool Looking Bokeh CSS Effect
10 Hot Logo Design Trends for 2021
Tailwind Builder 2.0 – Online Editor & Visual Studio Code Extension for TailwindCSS
Sidemail.io – Email Delivery Made Simple for Startups
Headless CMS: What and Why
Flow – Beautiful Animations Made Easy
Too Many Designers Worked for Free in 2020
Source Wireframe Kit 2.0 – A Huge Set of Blocks for Desktop and Mobile
Dev Fonts
SystemFlow – Like Tailwind, but for Webflow and Figma
Chartbrew – One Dashboard to View, Create and Share your Data
Build a Minimum Loveable Product
10 Embarrassing PR Fails that Show How not to Pitch
Slidepage: Create Mobile-focused Story Content for the Web
An Ex-Googler’s Guide to Dev Tools
5 Easy Ways to Create Images for your Blog Posts
“The Mandalorian” in AR? This is the Way.
Product Pages: 16 Best-in-Class Examples and Why They Work
Boop!
7 Signs It’s Time to Fire your Clients (For Freelancers)
Top Tips on Running a Healthier Design Agency
12 Free CSS Paginations
How to Build an Illustration Portfolio that Gets You Hired
FrontPage: The Good, the Bad, and the Ugly
How to Use Bootstrap in WordPress: A Quick Guide
Want more? No problem! Keep track of top design news from around the web with Webdesigner News.
State machines are typically expressed on the web in JavaScript and often through the popular XState library. But the concept of a state machine is adaptable to just about any language, including, amazingly, HTML and CSS. In this article, we’re going to do exactly that. I recently built a website that included a “no client JavaScript” constraint and I needed one particular unique interactive feature.
The key to all this is using and elements to hold a state. That state is toggled or reset with another radio or reset that can be anywhere on the page because it is connected to the same tag. I call this combination a radio reset controller, and it is explained in more detail at the end of the article. You can add more complex state with additional form/input pairs.
It’s a little bit like the Checkbox Hack in that, ultimately, the :checked selector in CSS will be doing the UI work, but this is logically more advanced. I end up using a templating language (Nunjucks) in this article to keep it manageable and configurable.
Traffic light state machine
Any state machine explanation must include the obligatory traffic light example. Below is a working traffic light that uses a state machine in HTML and CSS. Clicking “Next” advances the state. The code in this Pen is post processed from the state machine template to fit in a Pen. We’ll get into the code in a more readable fashion later on.
CodePen Embed Fallback
Hiding/Showing table information
Traffic lights aren’t the most practical every-day UI. How about a
instead?
There are two states (A and B) that are changed from two different places in the design that affect changes all over the UI. This is possible because the empty elements and elements that hold state are at the very top of the markup and thus their state can be deduced with general sibling selectors and the rest of the UI can be reached with descendent selectors. There is a loose coupling of UI and markup here, meaning we can change the state of almost anything on the page from anywhere on the page.
CodePen Embed Fallback
General four-state component
The goal is a general purpose component to control the desired state of the page. “Page state” here refers to the desired state of the page and “machine state” refers to the internal state of the controller itself. The diagram above shows this generic state machine with four states(A, B, C and D). The full controller state machine for this is shown below. It is built using three of the radio reset controller bits. Adding three of these together forms a state machine that has eight internal machine states (three independent radio buttons that are either on or off).
The “machine states” are written as a combination of the three radio buttons (i.e. M001 or M101). To transition from the initial M111 to M011, the radio button for that bit is unset by clicking on another radio in the same group. To transition back, the reset for the attached to that bit is clicked which restores the default checked state. Although this machine has eight total states, only certain transitions are possible. For instance, there is no way to go directly from M111 to M100 because it requires two bits to be flipped. But if we fold these eight states into four states so that each page state shares two machine states (i.e. A shares states M111 and M000) then there is a single transition from any page state to any other page state.
Reusable four-state component
For reusability, the component is built with Nunjucks template macros. This allows it to be dropped into any page to add a state machine with the desired valid states and transitions. There are four required sub-components:
Controller
CSS logic
Transition controls
State classes
Controller
The controller is built with three empty form tags and three radio buttons. Each of the radio buttons checked attribute is checked by default. Each button is connected to one of the forms and they are independent of each other with their own radio group name. These inputs are hidden with display: none because they are are not directly changed or seen. The states of these three inputs comprise the machine state and this controller is placed at the top of the page.
The logic that connects the controller above to the state of the page is written in CSS. The Checkbox Hack uses a similar technique to control sibling or descendant elements with a checkbox. The difference here is that the button controlling the state is not tightly coupled to the element it is selecting. The logic below selects based on the “checked” state of each of the three controller radio buttons and any descendant element with class .M000. This state machine hides any element with the .M000 class by setting display: none !important. The !important isn’t a vital part of the logic here and could be removed; it just prioritizes the hiding from being overridden by other CSS.
{%macro FSM4S_css()%}
<style>
/* Hide M000 (A1) */
input[data-rrc="Bx00"]:not(:checked)~input[data-rrc="B0x0"]:not(:checked)~input[data-rrc="B00x"]:not(:checked)~* .M000 {
display: none !important;
}
/* one section for each of 8 Machine States */
</style>
{%endmacro%}
Transition control
Changing the state of the page requires a click or keystroke from the user. To change a single bit of the machine state, the user clicks on a radio button that is connected to the same form and radio group of one of the bits in the controller. To reset it, the user clicks on a reset button for the form connected to that same radio button. The radio button or the reset button is only shown depending on which state they are in. A transition macro for any valid transition is added to the HTML. There can be multiple transitions placed anywhere on the page. All transitions for states currently inactive will be hidden.
The three components above are sufficient. Any element that depends on state should have the classes applied to hide it during other states. This gets messy. The following macros are used to simplify that process. If a given element should be shown only in state A, the {{showA()}} macro adds the states to hide.
The markup for the traffic light example is shown below. The template macros are imported in the first line of the file. The CSS logic is added to the head and the controller is at the top of the body. The state classes are on each of the lights of the .traffic-light element. The lit signal has a {{showA()}} macro while the “off” version of signal has the machine states for the .M000 and .M111 classes to hide it in the A state. The state transition button is at the bottom of the page.
The state machine component here includes up to four states which is sufficient for many use cases, especially since it’s possible to use multiple independent state machines on one page.
That said, this technique can be used to build a state machine with more than four states. The table below shows how many page states can be built by adding additional bits. Notice that an even number of bits does not collapse efficiently, which is why three and four bits are both limited to four page states.
Bits (rrcs)
Machine states
Page states
1
2
2
2
4
2
3
8
4
4
16
4
5
32
6
Radio reset controller details
The trick to being able to show, hide, or control an HTML element anywhere on the page without JavaScript is what I call a radio reset controller. With three tags and one line of CSS, the controlling button and controlled element can be placed anywhere after this controller. The controlled side uses a hidden radio button that is checked by default. That radio button is connected to an empty element by an ID. That form has a type="reset" button and another radio input that together make up the controller.
This shows a minimal implementation. The hidden radio button and the div it controls need to be siblings, but that input is hidden and never needs to be directly interacted with by the user. It is set by a default checked value, cleared by the other radio button, and reset by the form reset button.
Only two line of CSS are required to make this work. The :checked pseudo selector connects the hidden input to the sibling it is controlling. It adds the radio input and reset button that can be styled as a single toggle, which is shown in the following Pen:
CodePen Embed Fallback
Accessibility… should you do this?
This pattern works, but I am not suggesting it should be used everywhere for everything. In most cases, JavaScript is the right way to add interactivity to the web. I realize that posting this might get some heat from accessibility and semantic markup experts. I am not an accessibility expert, and implementing this pattern may create problems. Or it may not. A properly labelled button that does something to the page controlled by otherwise-hidden inputs might work out fine. Like anything else in accessibility land: testing is required.
Also, I have not seen anyone else write about how to do this and I think the knowledge is useful — even if it is only appropriate in rare or edge-case situations.
Maximizing any marketing task’s potential comes down to having the right tools and Instagram apps for business that boost your posts’ quality and save time. From customizing your bio link, creative storytelling, scheduling of posts, content curation, insights, audience engagement, visual commerce, and data analytics, great apps can transform the way you market and manage businesses on Instagram.
1. url.bio
If you are looking for an app that offers multiple options to your followers whenever they click on your bio link, go for url.bio. This app lets you share all your important links and social media with just one url, and the best part is, there is no limit as to the number of links you’d like to add. As a social media marketing tool, url.bio gives you an advantage in affiliate marketing, creating business profiles, easy cross-promotion, and blogging promotion.
Url.bio is highly customizable, which is perfect for building your brand. You can customize the colors and the thumbnails of your links. The app also has a collection of themes, so you can choose a theme that suits your brand’s persona and the vibe you’re going for.
Another great feature with url.bio is it allows you to track your analytics to see just how well your links are performing. Gaining valuable insights into your traffic helps know which content is performing best with your target audience.
Compared to other Instagram apps for business, url.bio allows you to access analytics total views, analytics total clicks, custom themes, pre-designed themes, customer support, and unlimited links. However, some features that only url.bio offers include direct links, a link scheduler, priority links, link thumbnails, social media links, and analytics click-through rate.
2. Over
Over is a popular graphic design Instagram app that helps Instagrammers, social media managers, and digital marketers create showstopping images that make audiences want to take that second look. Since the app is designed with Instagram stories in mind, Over is one of the most preferred apps for creating storytelling content, mostly because of its creative design suite.
The app also recently released its branding toolkit called Over Pro that comes with a 30-day free trial period. The toolkit has seven modules that give how-to’s on the following: branding and creating your business’s story, creating a logo for your brand, picking the right graphic style for your brand, crafting images that best suits your brand, choosing the suitable typeface, colors, and templates to shape your brand voice.
What’s great about this app is the plethora of personalized touches available. There are hand-curated videos, font collections, and graphics you can choose from. With Over’s easy-to-use tools for blending, creating layers, and masking, you can easily professionalize your images in minutes.
A quick note, though, when using Over for business and commercial use, be sure to read the entire terms and conditions to get acquainted with the permissions and limitations in using the tool. You are in the clear as to using Over’s services for personal and commercial use “except when the Service Content is used to create end products for sale where the lifetime sales of the end product for sale exceed 400 units…” Read the full text here.
3. Hootsuite
As one of the top Instagram apps for business in social media management, Hootsuite is one of the most complete. You can bring all your social channels into one dashboard where you can do everything from writing new posts, reading and tracking content, viewing post stats, and scheduling content. The platform allows you to support Twitter, Facebook pages, LinkedIn pages, Instagram, WordPress blogs, and more.
Hootsuite does the job of scheduling your social posts. You can keep your social presence active 24 hours a day since you can automatically schedule hundreds of posts across your social media accounts all at once. Content creation is also one of the tool’s best features. You can easily manage social content by staying on message with pre-approved content from your team posts stored in your cloud file service. You can tag, search, and check usage stats of your content in a breeze. This makes it easy to track and improve your social ROI.
Hootsuite’s comprehensive reporting gives you a bird’s eye view of the impact of your social media campaigns. Conversions are measured by social channels and have separate ROI between paid and owned media. As a monitoring and community management tool, Hootsuite allows you to find and filter social conversations by keywords, hashtags, and locations to hear what people say about your industry, competitors, and, most importantly, your brand.
Hootsuite is built to answer your business needs while optimizing your social media strategies. Pros include an easy-to-use interface and dashboard that integrates a wide range of social channels. Its app directory provides access to more than 100 apps so you can monitor various channels. Since it is a web-based tool that is compatible with all browsers, no extra software is needed. Also, Hootsuite’s collaboration tools make it easy for you to organize and monitor tasks. Weekly analytics reports are sent weekly by email.
However, since Hootsuite has many components, it takes a bit more time to learn and maximize its features. Adding more team members and signing up for analytics reports will entail higher costs. Also, it can be helpful to know that Facebook Analytics does not integrate with Hootsuite very well.
4. Squarelovin
If you are particular about getting in-depth data analytics and metrics on your Instagram posts, try Squarelovin. The app specializes in using authentic content from real users that provide social proof, inspiration, and trust on every channel. This is how Squarelovin naturally encourages engagement and ROI.
How does it work? By capitalizing on Visual Commerce, Squarelovin collects and curates images shared by people worldwide (user-generated content) and allows you to choose which ones you like most, seamlessly allowing you to request rights, tag to products, and organize the best content you earned. You can make content from your consumers, approve or disapprove pictures, manage image rights, and curate content all in one dashboard.
With one click, you will receive essential usage rights through a fully-automated process. This process lets you collect rights approved media at scale. You benefit from user-generated content (UGC) across all your relevant on-and offline marketing channels in the process.
With Squarelovin, you can link pictures and videos with the respective product data and make UGC shoppable without your buyers even noticing. These shoppable UGC posts gets integrated into your homepage, landing pages, and blogs. This way, you showcase highly relevant content while upgrading the customer experience. In the end, you can analyze and determine the success of your content quickly through rich analytics that covers traffic, clicks, conversions, and revenue.
Squarelovin is a free tool that guarantees visual content on all marketing channels, fast integration, unique layout, proper media usage rights, brand awareness, and advanced visual insights on content, products, and contributors. On the other side of that, note that the monthly analysis that Squarelovin offers doesn’t start right away. It will begin after the first month of usage.
5. Repost For Instagram
Repost For Instagram is one of the most popular reposting apps. Sharing content to your feed becomes second nature because of how the app makes it so easy for you to share content. Aside from being well-designed and easy to use, the original Instagrammer is credited whenever you repost photos and videos on your Instagram feed.
Repost for Instagram can repost media from private profiles and supports multiple media and IGTV posts. Once the app is downloaded and installed on your device, it is effortless to repost a video or photo you love. Simply copy the link to your clipboard from Instagram, and Repost for Instagram takes care of the rest.
You can also choose whether to copy the caption to your clipboard, customize the colors, and modify the attribution marks’ positions. Once you click on the share icon, you can either post it as a standard post or share it with your story. The app has limited ads, so choosing what to repost and share is done at top speed. However, since the app has in-app purchases, some features may not be readily available.
Free Instagram Apps For Business
Whatever you need to optimize the social media campaigns and marketing strategies, there are Instagram apps for business that you can choose from and combine to get the job done. These tools are what every savvy digital marketer needs to create compelling and engaging content as seamless, effective advertising on Instagram.
Maximizing any marketing task’s potential comes down to having the right tools and Instagram apps for business that boost your posts’ quality and save time. From customizing your bio link, creative storytelling, scheduling of posts, content curation, insights, audience engagement, visual commerce, and data analytics, great apps can transform the way you market and manage businesses on Instagram.
1. url.bio
If you are looking for an app that offers multiple options to your followers whenever they click on your bio link, go for url.bio. This app lets you share all your important links and social media with just one url, and the best part is, there is no limit as to the number of links you’d like to add. As a social media marketing tool, url.bio gives you an advantage in affiliate marketing, creating business profiles, easy cross-promotion, and blogging promotion.
Url.bio is highly customizable, which is perfect for building your brand. You can customize the colors and the thumbnails of your links. The app also has a collection of themes, so you can choose a theme that suits your brand’s persona and the vibe you’re going for.
Another great feature with url.bio is it allows you to track your analytics to see just how well your links are performing. Gaining valuable insights into your traffic helps know which content is performing best with your target audience.
Compared to other Instagram apps for business, url.bio allows you to access analytics total views, analytics total clicks, custom themes, pre-designed themes, customer support, and unlimited links. However, some features that only url.bio offers include direct links, a link scheduler, priority links, link thumbnails, social media links, and analytics click-through rate.
2. Over
Over is a popular graphic design Instagram app that helps Instagrammers, social media managers, and digital marketers create showstopping images that make audiences want to take that second look. Since the app is designed with Instagram stories in mind, Over is one of the most preferred apps for creating storytelling content, mostly because of its creative design suite.
The app also recently released its branding toolkit called Over Pro that comes with a 30-day free trial period. The toolkit has seven modules that give how-to’s on the following: branding and creating your business’s story, creating a logo for your brand, picking the right graphic style for your brand, crafting images that best suits your brand, choosing the suitable typeface, colors, and templates to shape your brand voice.
What’s great about this app is the plethora of personalized touches available. There are hand-curated videos, font collections, and graphics you can choose from. With Over’s easy-to-use tools for blending, creating layers, and masking, you can easily professionalize your images in minutes.
A quick note, though, when using Over for business and commercial use, be sure to read the entire terms and conditions to get acquainted with the permissions and limitations in using the tool. You are in the clear as to using Over’s services for personal and commercial use “except when the Service Content is used to create end products for sale where the lifetime sales of the end product for sale exceed 400 units…” Read the full text here.
3. Hootsuite
As one of the top Instagram apps for business in social media management, Hootsuite is one of the most complete. You can bring all your social channels into one dashboard where you can do everything from writing new posts, reading and tracking content, viewing post stats, and scheduling content. The platform allows you to support Twitter, Facebook pages, LinkedIn pages, Instagram, WordPress blogs, and more.
Hootsuite does the job of scheduling your social posts. You can keep your social presence active 24 hours a day since you can automatically schedule hundreds of posts across your social media accounts all at once. Content creation is also one of the tool’s best features. You can easily manage social content by staying on message with pre-approved content from your team posts stored in your cloud file service. You can tag, search, and check usage stats of your content in a breeze. This makes it easy to track and improve your social ROI.
Hootsuite’s comprehensive reporting gives you a bird’s eye view of the impact of your social media campaigns. Conversions are measured by social channels and have separate ROI between paid and owned media. As a monitoring and community management tool, Hootsuite allows you to find and filter social conversations by keywords, hashtags, and locations to hear what people say about your industry, competitors, and, most importantly, your brand.
Hootsuite is built to answer your business needs while optimizing your social media strategies. Pros include an easy-to-use interface and dashboard that integrates a wide range of social channels. Its app directory provides access to more than 100 apps so you can monitor various channels. Since it is a web-based tool that is compatible with all browsers, no extra software is needed. Also, Hootsuite’s collaboration tools make it easy for you to organize and monitor tasks. Weekly analytics reports are sent weekly by email.
However, since Hootsuite has many components, it takes a bit more time to learn and maximize its features. Adding more team members and signing up for analytics reports will entail higher costs. Also, it can be helpful to know that Facebook Analytics does not integrate with Hootsuite very well.
4. Squarelovin
If you are particular about getting in-depth data analytics and metrics on your Instagram posts, try Squarelovin. The app specializes in using authentic content from real users that provide social proof, inspiration, and trust on every channel. This is how Squarelovin naturally encourages engagement and ROI.
How does it work? By capitalizing on Visual Commerce, Squarelovin collects and curates images shared by people worldwide (user-generated content) and allows you to choose which ones you like most, seamlessly allowing you to request rights, tag to products, and organize the best content you earned. You can make content from your consumers, approve or disapprove pictures, manage image rights, and curate content all in one dashboard.
With one click, you will receive essential usage rights through a fully-automated process. This process lets you collect rights approved media at scale. You benefit from user-generated content (UGC) across all your relevant on-and offline marketing channels in the process.
With Squarelovin, you can link pictures and videos with the respective product data and make UGC shoppable without your buyers even noticing. These shoppable UGC posts gets integrated into your homepage, landing pages, and blogs. This way, you showcase highly relevant content while upgrading the customer experience. In the end, you can analyze and determine the success of your content quickly through rich analytics that covers traffic, clicks, conversions, and revenue.
Squarelovin is a free tool that guarantees visual content on all marketing channels, fast integration, unique layout, proper media usage rights, brand awareness, and advanced visual insights on content, products, and contributors. On the other side of that, note that the monthly analysis that Squarelovin offers doesn’t start right away. It will begin after the first month of usage.
5. Repost For Instagram
Repost For Instagram is one of the most popular reposting apps. Sharing content to your feed becomes second nature because of how the app makes it so easy for you to share content. Aside from being well-designed and easy to use, the original Instagrammer is credited whenever you repost photos and videos on your Instagram feed.
Repost for Instagram can repost media from private profiles and supports multiple media and IGTV posts. Once the app is downloaded and installed on your device, it is effortless to repost a video or photo you love. Simply copy the link to your clipboard from Instagram, and Repost for Instagram takes care of the rest.
You can also choose whether to copy the caption to your clipboard, customize the colors, and modify the attribution marks’ positions. Once you click on the share icon, you can either post it as a standard post or share it with your story. The app has limited ads, so choosing what to repost and share is done at top speed. However, since the app has in-app purchases, some features may not be readily available.
Free Instagram Apps For Business
Whatever you need to optimize the social media campaigns and marketing strategies, there are Instagram apps for business that you can choose from and combine to get the job done. These tools are what every savvy digital marketer needs to create compelling and engaging content as seamless, effective advertising on Instagram.
In the early stages of growing your WordPress blog? Or have your visitor numbers started to plateau or even *gasp* dwindle and you’re wondering what on earth to do next?
It’s tough. Sometimes, it can feel like you’ll never get to the level of the high flyers in your industry.
But, don’t give up. You’ve already put in lots of hard work by creating your website and blog posts. And you may just need to adopt some better strategies to take your blog to the next level.
This guide will teach you how to take a more strategic approach, grow your audience, increase traffic, and ultimately achieve your goals.
1. Have a Clear Strategy
If you’re serious about growing your WordPress blog, you need a strategy.
When you have a clear strategy, every single blog post you create will help you to achieve your goals. Without a strategy, you run the risk of blogging haphazardly and wasting time and effort.
Here’s what you need to do:
1. Define Your Goals
What do you hope to achieve by blogging? Do you want to raise awareness for a cause that’s dear to your heart? Do you want to monetize your blog and become a pro blogger? Or maybe your blog is connected to your business and you hope to use it to build customer loyalty?
Whatever your goals are, you must document them. And use them to inform every decision you make and every piece of content you create going forward.
One of the best ways to do this is to set SMART goals for your blog or business. This stands for Specific, Measurable, Achievable, Relevant and Time-bound.
Of course, you’ll have your overarching goal, e.g. “to monetize my blog”. But, when you set SMART goals, you get into the finer details. Using the previous example, you might set the following goals:
Grow traffic to 3k per month and subscribers to 500
Etc.
2. Determine Your Content Strategy
Next, you’ll need to go into even more detail and define the content strategies you’ll use to help you achieve the goals you’ve just outlined. Your content strategy will be entirely personal to you and what you hope to achieve.
For instance, if you want to monetize your blog, you might opt for an SEO-driven content strategy. This way you’d be able to attract visitors looking for solutions to their problems on search engines and recommend products perhaps.
Whereas, if you want to raise awareness for a cause, you’d create content on multiple channels in order to reach the widest audience possible and so on. These are just some examples of content marketing strategies that drive growth.
All in all, you need to be clear on what you hope to achieve and then you’ll be able to work out the best tactics for achieving it.
2. Build Your Subscriber List
You should start collecting email subscribers as soon as possible and always continue to work on growing your subscriber list. Newbies often miss this part out and wait until later to start growing a subscriber list. But, the sooner you can start growing a community that you can utilize for whatever your goals are, the better.
Now, have you ever been to a website and seen a popup that says “Join our list of 3 kazillion subscribers”? They make it seem easy to collect subscribers. The truth is, it’s difficult to get people to sign up for your mailing list. And subscriber rates vary.
A Databox study found that 36% of sites have a blog/newsletter subscription rate of just 1-5%, while 48% achieve a rate of 11%+:
But, there are ways you can improve your chances of landing in the higher bracket. Here’s how you can get more subscribers for your blog:
1. Create Appealing Opt-In Forms
It’s easier to create professional-looking forms than you think. JotForm, for example, has tons of free, ready-made templates you can customize for your blog.
When creating your form, use enticing copy to attract subscribers. Also, keep form fields to a minimum to make it as easy as possible to sign up.
Furthermore, you should place your forms in strategic locations. For instance, you can insert a form with a relevant offer at the end of a blog post. Or you could set up exit-intent popups that trigger when somebody is about to leave your site.
2. Offer Incentives for Signing Up
Increase signups by giving visitors a reason to subscribe. Your offer or incentive should be catered to your audience and/or the blog content it’s attached to.
In this example, a craft blogger offers subscribers free printable card kits:
You can do something similar by offering bonus content or resources that are relevant to your audience. For example, you could offer a template, checklist, cheat sheet, or similar.
Make your form and your incentive attractive and you’ll be onto a winner.
3. Network With Other Bloggers
One of the best ways to grow your blog is to network and collaborate with other bloggers. And WordPress, in particular, promotes community vibes. For instance, there are tons of enthusiastic WordPress communities across the globe.
The cool thing is, you’d be surprised by how willing bloggers are to give one another a lift up. I, personally, have benefitted from building relationships with other bloggers. We share tips, we collaborate on content creation, we big up each other’s stuff, and more.
Fewer bloggers use influencer outreach (12%) than other promotion tactics, e.g. social media (94%). Yet, it’s the most effective promotional strategy for bloggers:
So, essentially, networking with other bloggers or influencers is an underrated strategy that could drive serious growth. Here’s how to get started:
1. Find Bloggers in Your Niche
Naturally, you’re more likely to form connections with those who create similar content to you. Plus, these relationships will be more beneficial for many reasons. For example, you may be able to make relevant industry connections that lead to business partnerships or earn backlinks on highly relevant sites.
Here are some places where you can find similar bloggers:
Browse WP Discover which showcases bloggers from a range of niches along with their work.
Find relevant groups and communities on social media.
2. Build Authentic Relationships
Busy bloggers receive messages from people who want something from them all day long. But, there’s no such thing as a free lunch.
You have to build genuine connections. If you’re reaching out to an influencer, try asking a well-thought-out question about their latest blog post. Or share and link to their work to get their attention. And later down the line, you can start building mutually beneficial relationships.
So, you might not see the benefits of your networking immediately. But, trust me, it will pay off in due time.
4. Utilize Plugins
WordPress has an enormous library of plugins which makes it one of the most customizable blogging platforms going. Anybody can build and grow a website like a pro, without the need for advanced tech skills or a large budget.
Here are some examples of plugins that will help you grow your WordPress blog:
1. SEO
Yoast SEO is the plugin for SEO. Even those who have been blogging for a long time need to take full advantage of Yoast. It acts as a checklist that reminds you of all the little things you need to do to optimize your posts for search engines.
2. Social Share Buttons
It baffles me when I see a blog that doesn’t have social share buttons on their posts. Do you really think people are going to copy and paste all of the information over to Twitter etc? No. You need to make it as easy as possible for people to share your posts. Examples include Click To Tweet, Sumo Share and ShareThis.
3. Site Speed
When you create a great user experience for visitors, they stick around for longer and are more likely to return to your site. Making sure your site loads quickly is essential for a good user experience. You can do this via plugins, such as WP Rocket or W3 Total Cache.
4. Forms
You’ll need forms on your WordPress site so that users can engage and connect with you. For instance, you can use a plugin such as WordPress Embed Form to place any kind of form anywhere on your site. Or you might get the Constant Contact or MailChimp plugin so that you can collect email addresses.
There are lots of plugins out there that you may want to experiment with. But these four main categories are fundamental for growing your blog.
5. Promo, Promo, Promo
You need to spend as much (if not more) time promoting your blog posts as you do creating them. The “Build it and they will come,” philosophy doesn’t necessarily work when it comes to blogging.
There are 70 million new blog posts on WordPress every month. Thus, your promo strategy needs to be on-point if you hope to stand out from the crowd. Here are some tips:
1. Utilize Your Connections
Once you’ve built up your network of bloggers, you can begin to work with them in more of a strategic way, as mentioned above. Just remember that these partnerships need to be reciprocal and you have to offer as much value as you hope to receive.
2. Guest Blog
Reach pre-existing audiences in your niche by guest blogging on other sites. Naturally, you can and should utilize your blogging network to win guest post spots.
You can also find blogs that accept guest posts simply by searching on Google. Type in “[keyword] + write for us” or “[keyword] + contribute”, for example, to find the most relevant blogs. Make sure the blogs have a high domain authority using a tool, such as MozBar.
3. Up Your Social Media Game
When it comes to social media, it pays to know your blog’s audience really well. When you do, you can hone in on the right social media channels, groups, pages, types of media, hashtags and so on. This means you can reach the right people that are most likely to click on and engage with your posts.
There are also lots of tools you can use to manage social media or plan and schedule your posts in advance. This is really helpful for bloggers who run a one-person show and don’t have the time or resources to post on multiple social media channels multiple times a day.
4. Repurpose Content
One of the most efficient ways to grow your blog is to repurpose your blog posts. This means that you get more out of every piece of content you create. You also have the benefit of reaching people that prefer different types of media.
For instance, you could turn the steps in a how-to post into a video tutorial. Or take the research you did for a post and create an infographic.
Overall, a solid distribution strategy for your blog posts takes work but you can speed up the process by utilizing your contacts and resources.
Summing Up
There’s more to growing your WordPress blog than creating great blog posts. There need to be strategies behind what you’re doing if you want to see your traffic and audience grow.
Here are the key takeaways from this guide:
You must define your goals and the strategies you’ll use to reach them.
Build up an audience by collecting subscribers.
Get to know other bloggers so you can help each other out.
Take advantage of plugins that’ll give your site a boost.
Promote the hell out of the great content you create.
Now it’s over to you to grow your WordPress blog. Take the first step by outlining your SMART goals.
There is really no limit to how you can style them. If you don’t like the default focus ring, you can remove that, but make sure to put some kind of styling back.
Here I’ve used a header element for each expandable section, which has a focus state that mimics other interactive elements on the page.
The only browser that doesn’t support this are the Microsoft ones (and Opera Mini which makes sense—it doesn’t really do interactive).
This browser support data is from Caniuse, which has more detail. A number indicates that browser supports the feature at that version and up.
Desktop
Chrome
Firefox
IE
Edge
Safari
12
49
No
79
6
Mobile / Tablet
Android Chrome
Android Firefox
Android
iOS Safari
86
82
4
6.0-6.1
But even then, it’s just like all the sections are opened, so it’s not a huge deal:
Wanna style that default triangle? Strangely enough, the standard way to do that is through the list-style properties. But Blink-based browsers haven’t caught up to that yet, so they have a proprietary way to do it. They can be combined though. Here’s an example of replacing it with an image:
Unfortunately, they don’t turn, and there is no way to animate the default triangle either. One idea might be to target the :focus state and swap backgrounds:
But that seems to be limited to WebKit and Blink and, even then, the arrow will return once the item is out of focus even if the item is still expanded.
AVIF, the file format based on the AV1 video codec, is the latest addition to the next-gen image formats. Early reports and comparisons show good results compared to JPEG and WebP. However, even if browser support is good, AVIF is still on the bleeding edge in regards to encoding and decoding. Encoding, decoding, settings and parameters has been well discussed elsewhere.
No doubt, AVIF images generate a smaller payload and are nice looking. In this post, we’ll take a closer look at issues to be aware or before you go all in on AVIF.
1. WebP is Better for Thumbnails
One interesting observation is that for small dimension images, WebP will produce lighter payload images than AVIF.
It’s probably possible to explain why, and tune the encoder to address this case. However, that is not an option for most people. Most people would probably rely on an image optimizer like squoosh.app or an image CDN like ImageEngine. The below comparison uses exactly these two alternatives for AVIF conversion.
We see that WebP will generally produce images with a higher file size than AVIF. On larger dimension images, ImageEngine performs significantly better than squoosh.app.
Now, to the interesting observation. On images around 100px × 100px squoosh.app passes ImageEngine on effectiveness, but then also WebP catches up and for a 80px x 80px image. WebP is actually the most effective image measured in file size.
The test performs relatively consistently on different types of images. For this illustration, this image from Picsum is used.
Pixels
Original JPEG (bytes)
Optimized WebP (bytes)
ImageEngine AVIF (bytes)
squoosh.app AVIF (bytes)
50
1,475
598
888
687
80
2,090
1,076
1,234
1,070
110
3,022
1,716
1,592
1,580
150
4,457
2,808
2,153
2,275
170
5,300
3,224
2,450
2,670
230
7,792
4,886
3,189
3,900
290
10,895
6,774
4,056
5,130
2. AVIF Might Not Be the Best for Product Images with High Entropy
Typically, a product page consists of images of the product, and when a user’s mouse hovers over or clicks on the product image, it zooms in to offer a closer look at the details.
It is worth noting that AVIF will in certain cases reduce the level of detail, or perceived sharpness, of the image when zoomed in. Especially on a typical product image where the background is blurred or has low entropy while foreground, and product, has more detail and possibly higher entropy.
Below is a zoomed in portion of a bigger product image (JPEG, AVIF) which clearly illustrates the difference between a regularly optimized JPEG versus an AVIF image optimized by squoosh.app.
The AVIF is indeed much lighter than the JPEG, but in this case the trade off between visual quality and lower file size has gone too far. This effect will not be as perceptible for all types of images, and therefore will be difficult to proactively troubleshoot in an automated build process that relies on responsive images syntax for format selection.
Moreover, unlike JPEG, AVIF does not support progressive rendering. For a typical product detail page, progressive rendering might provide a killer feature to improve key metrics like Largest Contentful Paint and other Core Web Vitals metrics. Even if a JPEG takes a little bit longer time to download due to its larger file size compared to AVIF, chances are that it will start rendering sooner than an AVIF thanks to its progressive rendering mechanism. This case is well illustrated by this video from Jake Achibald.
3. JPEG 2000 is Giving AVIF Tough Competition
The key selling point of AVIF is its extremely low file size relative to an acceptable visual image quality. Early blogs and reports have been focusing on this. However, JPEG2000 (or JP2) may in some cases be a better tool for the job. JPEG2000 is a relatively old file format and does not get the same level of attention as AVIF, even if the Apple side of the universe already supports JPEG2000.
To illustrate, let’s look at this adorable puppy. The AVIF file size optimized by squoosh.app is 27.9 KB with default settings. Converting the image to JPEG2000, again using ImageEngine, the file size is 26.7 KB. Not much difference, but enough to illustrate the case.
What about the visual quality? DSSIM is a popular way to compare how visually similar an image is to the original image. The DSSIM metric compares the original image to a converted file, with a lower value indicating better quality. Losslessly converting the AVIF and JPEG2000 version to PNG, the DSSIM score is like this:
AVIF has slightly better DSSIM but hardly visible to the human eye.
Right Tool for the Job
The key takeaway from this article is that AVIF is hardly the “silver bullet,” or the one image format to rule them all. First of all, it is still very early in the development of both encoders and decoders. In addition, AVIF is yet another format to manage. Like Jake Archibald also concludes in his article, offering 3+ versions of each image on your webpage is a bit of a pain unless the entire workflow (resize, compress, convert, select, deliver) is all automated.
Also, like we’ve seen, just because a browser supports AVIF, it doesn’t mean that it is the best choice for your users.
Using responsive images and adding AVIF to the list of image formats to pre-create is better than not considering AVIF at all. A potential challenge is that the browser will then pick AVIF if it’s supported regardless of whether AVIF is the right tool or not.
However, using an image CDN like ImageEngine, will to a greater extent be able to dynamically choose between supported formats and make a qualified guess whether WEBP, JPEG2000 or AVIF will give the best user experience. Using an image CDN to automate the image optimization process will take into account browser compatibility, image payload size and visual quality.