A Digital Marketing Blog | Info You Need, That You'll Actually Want To Read Make your marketing better. Mon, 15 Dec 2025 21:38:19 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.3 /wp-content/uploads/2025/11/FS-Square-96x96.png A Digital Marketing Blog | Info You Need, That You'll Actually Want To Read 32 32 What Is Web Accessibility And Why Does It Matter? https://fullstacks.pro/what-is-web-accessibility-and-why-does-it-matter/ Thu, 19 May 2022 00:00:00 +0000 https://fullstacks.pro/what-is-web-accessibility-and-why-does-it-matter/ Start incorporating accessibility into your web projects for a positive user experience.

The post What Is Web Accessibility And Why Does It Matter? appeared first on Full Stacks.

]]>

The people who spend time on your website take in and understand information in a wide variety of ways.

The goal of web accessibility is to ensure that all websites, web apps, and online services deliver the best user experience for everyone, including people with permanent and situational disabilities, and are optimized for any tools and adaptive technologies people may use to understand content.

Why should a website be accessible?

Typically, a website is built with the idea that people will visit it, understand its purpose, read the content, and take some sort of action. It doesn’t make sense to build a website that only some people can find or one that is so painful to use that it infuriates a large percentage of the people trying to navigate it. Similar to how you wouldn’t build a brick-and-mortar store, turn on your “Come on in, we’re open!” sign, and then lock the front doors.

We are making accessibility a priority by making it an essential part of our website, design, content development, and SEO processes. People need to get information in different ways and we believe that everyone should have equitable access to that information. Everyone’s experience matters. It also makes ‘good business sense’ to make your website an easy place for people to do what you want them to do so you can make more money. Plus, it’s either already a legal issue or will be soon.

What makes a website accessible?

There are a lot of elements, from code to content, that all work together to make a website accessible. When everyone and everything works together, you will get a website with a purpose that is easy to understand, simple to navigate, and easy to perform actions on. For everyone!

Website accessibility is a huge topic. Describing all of the elements that go into optimizing for accessibility would require one very long blog post, so this post is an introduction to a series of posts we are working on as we learn more and more about accessibility. Everyone involved in developing a website, including designers, web developers, SEO specialists, and marketing folks, can contribute to optimizing for accessibility. Here’s a quick list of what a designer has to consider when designing for accessibility: colour contrast, font size, styles for interactive elements, grouping related content, different viewport sizes, and much more!

Another quick example of one element that contributes to website accessibility is the jump or anchor links at the top of this blog post. These are handy for a person to see what content is on the page right away, without having to scan and scroll. Jump links also help someone who uses a screen reader quickly navigate to the information they are looking for. Without jump links or anchor links, the visitor has to listen to the entire page being read out, or manually tab through the headings from the top to the bottom of the page to see if it contains the information they are looking for. Which sounds like a tedious exercise, and wouldn’t inspire warm feelings towards a website, particularly a content-heavy one.

For context, here’s a video of someone using a screen reader:

What makes a website inaccessible?

A website is inaccessible when it is designed and built without the experience of the user in mind. Or, maybe a website is built with the experience of a user in mind, but not all users.

Sometimes it can be hard to think outside of your own experience. For instance, if you watch a video without closed captioning, and you don’t need closed captioning, then you might not notice the absence. But for someone who depends on closed captioning to understand the content of a video, the absence would noticeably detract from the experience. Another important thing to note is that accessibility can be situational. Just because you don’t use captions on a video one day doesn’t mean that you might not need to use them another day, like if you had a baby or a grumpy cat napping on your chest.

If you’re looking for some more examples of inaccessibility, check out this article: 5 Most Annoying Website Features I Face as a Blind Person Every Single Day.

When accessibility is an afterthought, it can cause usability issues. Instead, we should think about accessibility as an essential part of website development and maintenance, until it’s a natural part of the process, like choosing a font.

Who is responsible for website accessibility?

Only you can prevent bad user experiences! As mentioned earlier in this post, accessibility can be optimized in every element of a website, from code to content. The best web designs happen when everyone who touches or thinks about a website is in the loop with accessibility.

Here is a list of people who can contribute to web accessibility:

  • Web developer
  • Designer
  • SEO specialist
  • Marketer
  • Website owner
  • Business owner
  • YOU

You get the idea! If everyone is familiar with accessibility concerns within their area of expertise, then when everyone comes together to work on a website it means accessibility is baked into every plan and process.

For us right now, if we want to make the colours on a site as accessible as possible, we can call upon Sarah’s expertise (she absolutely loves when one of us sends her a brand colour palette that features pumpkin orange or lime green)! And we can flag Leanne if we have questions about accessible code. Liz approaches website work (and life) through an SEO lens, and as it turns out, web accessibility can have a positive impact on SEO because search engines benefit from the effort that goes into setting up websites to be read by screen readers as well.

When to start making your website accessible

If you have a website, are building a website, or you work on other people’s websites, now is the time to start learning about accessibility and how to implement it.

If you are about to build a website, start talking about accessibility from the very beginning. All of the different people involved in a website build can contribute to accessibility in their respective areas of expertise. Once you start including accessibility in your project planning, it will become an automatic part of your process.

If you already have a website and aren’t at the beginning of a new build, have no fear. While it’s probably easier to optimize for accessibility before your website is built, it’s also not something that is ever complete. You can’t set it and forget it — our understanding of accessibility is always growing and changing. What we thought was an accessible page a few months ago might not be anymore. As long as you are always learning, and paying attention, there will be room to optimize your website.

Here are some great tools and resources that will help you get started with actionable items:

We use Monsido for accessibility scans and will do free scans for the first 3 people who get in touch with us to request them!

How to advocate for accessibility

It can be difficult to advocate for accessibility to someone who hasn’t encountered issues with inaccessibility firsthand before. You may be in a position where you are dealing with a culture, board, or management that doesn’t understand the value of accessibility. Maybe they think it’s extra work that only benefits a few people, and therefore isn’t a priority for their organization. Or maybe they think that because it’s not legislated, they don’t have to worry about it.

Website accessibility benefits everyone

Optimizing your website for accessibility doesn’t have to (and shouldn’t) be something that you only do when forced by legislation. Nor is it really an altruistic act, because website accessibility benefits everyone.

If we really boil down what accessibility is, it’s making a website as user-friendly and easy to use as possible. For example, maybe you don’t have an issue reading smaller font sizes. Making the font bigger so everyone has an easier time reading it won’t make it harder for you to read. It will probably make it easier and more accessible.

This is a good time to reiterate that accessibility can be temporary or situational. For someone recovering from cataract surgery, accessible colours on a website will be easier to read. Or maybe you are a) in a loud place and can’t hear a video on your phone, or b) in a quiet place and can’t have the sound on. Closed captions are handy for everyone in those situations.

We are not talking about just a small group of people who will benefit from accommodations that make browsing the web comfortable and easy. There are 6 million Canadians with permanent disabilities who deserve to be able to navigate a website with ease. Considering temporary and situational disabilities, and the fact that any optimizing you do only makes a website easier for everyone to use, there are no drawbacks to making accessibility a top priority for any business.

Accessibility promotes positive brand reputation

Optimizing for accessibility on your website, apps, and social media, means more people will have a positive interaction with your brand. If a large portion of visitors to your website can’t use it effectively, then the result is a lot of people who are annoyed and alienated. Why would you want the perception of your business to be anything but positive?

It’s important for brand reputation to consider all online services that your business engages with. If you make sure that you are following accessibility best practices on Twitter, like using image descriptions for pictures that you tweet, that can create positivity towards your brand. But if someone clicks on your website link from Twitter, and your images aren’t using alt text there, then any trust you’ve built can be lost. Accessibility should not be performative — it has to actually improve a user’s experience.

This is another reason why it helps if everyone in your organization is familiar with accessibility best practices, since you will likely have many different people involved with different areas of your online presence.

When you’re advocating for accessibility, explaining how overall brand perception can be affected by inaccessibility is a good way to show the value of accessibility and why it should be a priority.

How much is this going to cost me?

A frequent hurdle people encounter when advocating for accessibility (or anything really) at their organization is budget.

There will be costs associated with optimizing your website. If you’re at the beginning of a website build, then ensuring the final product is up to accessibility standards shouldn’t affect your budget in a big way. You are already choosing colours, fonts, writing content, developing code, etc. Just ensure when you are making those decisions that you are considering accessibility. There are a variety of tools and information available that can guide you with choosing the right colour contrast, font size, how to use accessible language, and how to write accessible code.

If you have a website and you need to improve its accessibility, then there will be expenses depending on what areas need optimizing and any outsourcing you need to do, like working with web developers and designers. Whether you are building or fixing up your website, you may want to invest in web accessibility software like Monsido, which is what we use.

It’s important to note despite some up-front costs, making your website accessible is an investment in your business. When you improve accessibility, you improve the user experience for everyone. A good user experience means happy website visitors. Happy web visitors have warm, satisfied thoughts about your organization. If you are looking for some more concrete facts, this article lays out the math about the ROI of web accessibility.

It could end up costing you a lot more if you don’t make your website accessible. While there isn’t currently web accessibility legislation in Alberta (where most of our team is located), it is becoming increasingly common. In Ontario, the Accessibility for Ontarians with Disabilities Act (AODA) requires that organizations ensure their web content is accessible or you can face a $100,000 fine.

It’s not unlikely that a similar regulation could come to your state or province (or country!), if something doesn’t exist already. And when that happens, you don’t want to be left scrambling trying to fix your website. Especially because making your website accessible isn’t a one-and-done task. There is nothing to stop someone, or multiple people, from suing your business for failing to comply with accessibility standards. Even if you’re in the middle of trying to make it accessible.

How to think creatively about accessibility

What does it look like when accessibility is part of your processes, and not something that is added later?

We knew that we wanted our website (and the websites we work on) to have a great user experience for everyone. While we have optimized our current website to meet accessibility standards, we are also working on a brand new web design, and accessibility is a key part of our website plan!

Let’s take a look at the website headings we developed for a clients’ websites to see one way in which we planned for accessibility. The question: How can our headings be accessible, be optimized for SEO, but also have room for our brand voice and compelling marketing messaging? This is where everyone having accessibility knowledge and communicating about it from the beginning pays off.

After a meeting with designers, developers, and writers (who love SEO), we landed here: what if the H1 on a website wasn’t the BIGGEST heading? It would still contain the clear information that tells visitors, screen readers, and Google exactly what the page is about. It would still be the most important of the headings. It just wouldn’t look like the most important message.

""

See the H1? It has clear information about what is on the web page. And then the larger bold text below is not a heading, it is a branded message. You don’t actually need the second, larger heading to understand what is on the page. The H1 satisfies our SEOs and is useful for screen readers to quickly understand the content of the page.

It can be easy to get used to things a certain way, and many of us are conditioned to thinking of H1s as the biggest, baddest text in town. It’s the main heading! It should look like the main heading. But it doesn’t have to.

Accessibility doesn’t need to be complicated or expensive. You can see that a whole team of designers, developers, SEOs, and brand strategists who are empowered to think about accessibility together will come up with solutions that make sense for accessibility and marketing harmoniously.

Five ways to optimize for website accessibility today

There are many great tools and resources out there to get started on your accessibility journey, some of which we shared earlier in this post. However, if you are eager to get started and looking for some quick wins you can implement today, check out this post on our Instagram for five changes you can make right now to help your site be more accessible.

Intro to a series on website accessibility

We are all learning so much about accessibility and we plan to share our knowledge along the way. Stay tuned for more posts on a variety of accessibility topics including:

  • How to write accessible code
  • How to design an accessible brand kit
  • How to make accessible designs that look good
  • How accessibility and SEO work together
  • Ten quick fixes to optimize your website for accessibility today
  • How to build accessible forms
  • Why you should use alt text on all non-text elements
  • How to optimize your social accounts for accessibility

If you’re planning a new website project or curious about how your current site holds up to accessibility standards, please get in touch!

The post What Is Web Accessibility And Why Does It Matter? appeared first on Full Stacks.

]]>
Agile-ish: How we adopted some Agile principles into our custom WordPress web design process https://fullstacks.pro/agile-principles-for-wordpress-web-design-and-dev/ Wed, 15 Jul 2020 00:00:00 +0000 https://fullstacks.pro/agile-principles-for-wordpress-web-design-and-dev/ You can too!

The post Agile-ish: How we adopted some Agile principles into our custom WordPress web design process appeared first on Full Stacks.

]]>

Custom WordPress web development is one of the things we do here at Full Stacks.

It’s fun, challenging, and sometimes makes you want to pull your hair out when you’re doing QA for the sixth day in a row and can no longer remember why you decided to try a new category filtering system on this project, with this budget, with this timeline, in this lunar cycle. With Jupiter in the seventh house? What were we thinking?!

You know how it goes, everything’s simple in the beginning when we dream big with our client about the best solution for their site. But a week from launch, with the bug fixes piling up and the client finding issues every other minute on the live site, we’re ready to change professions to something where we never have to touch a computer again (do those even truly exist anymore?).

If you work in an agency, this might sound familiar. Scarily familiar, maybe?

We (and our clients!) ended a lot of our web projects in the same way: tired. A more complex web design project might end up taking eight months or more. That’s a long time to keep momentum up, spirits high, and scope in check.

After some soul searching, much brainstorming, and from some help from our friends at the digital project management consultancy, Louder Than Ten, we realized that we were approaching projects the wrong way. And chances are, you might be too.

What is Waterfall web design and development?

Waterfall is a project management methodology where project activities happen in discrete, linear steps. One step is done, reviewed, then the next step begins. In web design and development, it describes a process of phases that might go something like this:

  • Determining the direction of the site through a discovery/strategy phase. This involves uncovering the problem that needs to be solved by a new website, researching the audience, auditing existing content, doing keyword research, and more.
  • Creating a sitemap, content structure, and functionality list. This is where the findings of discovery turn into a concrete plan for what content will be on each page of the site, how those pages interconnect, and what special features the site needs.
  • Turning that plan into wireframes. Wireframes are black and white “blueprints” of the visual layout of the site to confirm hierarchy. Often these are built in a tool like Invision, which allows for low-fi prototyping.
  • Turning the wireframes into high-fidelity design mockups. This is where colours are applied and everything looks like how the site really will once it’s finished.
  • Passing those mockups off to a developer. They then go away and turn them into a website (MAGICALLY, in the opinion of the non-devs on our team), connected to a WordPress content management system (CMS).
  • Doing quality assurance on the site after it’s been developed, uncovering bugs and then fixing them.
  • Training the client on using the CMS and handing it off to them to do content entry.
  • Launching the site once content entry and bug fixes are complete.

Waterfall is how Full Stacks used to and — we’d hazard a guess — many agencies still run their web design projects. (For clarification, we’re talking websites here, not apps/software.)

There are reasons why Waterfall has been the predominant form:

  • It’s a straightforward and easy process to explain to clients
  • There are less meetings and feedback loops required, so it feels like it’s saving time
  • Scheduling is straightforward, because a developer doesn’t need to touch the project until the designs are all finished and approved
  • Other methodologies require a project manager or team lead who can be very involved in running the project
  • It’s how print projects usually work. Make your layout, send it off to be created. It feels comfortable because it’s how things have “always been done.”

The biggest issues with Waterfall web design & development

While running our projects in Waterfall didn’t always go poorly for us, we found we were consistently hitting the same issues over and over.

If you work at an agency, do any of these sound familiar?

If a client isn’t happy with the design direction, all page designs need to be changed

If you present a full design, with all of the pages in a certain aesthetic direction, a client might come back with feedback that affects every single page. That means your designer is going to have to redo work that’s already done… a good recipe for going over budget and sailing past your deadlines.

The budget gets gobbled up by earlier phases, and there’s no time or leeway to change the plan

When you’re working in Waterfall, every phase needs to be completed before you move on to the next. That means that if you go over budget in one phase, you’ll need to pare back in the next phase. But if all of your designs have been approved, you can’t really ask the client at that point if you can go back to the drawing board and cut some features. Well, you can, but it’s a tough conversation that often doesn’t go well.

Developers aren’t involved in the project until it’s too late for their input

In the traditional Waterfall approach, a developer might be involved in quoting, or a designer might ask their opinion when they’re designing the UI for a feature. Or they might quickly review the designs before they go out to a client. But on the whole, they aren’t really brought into the fold until the site designs are done and they’re supposed to start developing the site.

The issue with that? Only they really know how complex a template will be to code. Only they know that that slick hover state we imagined will actually take twelve hours to get right, not two. These are the types of issues that only really get caught when a developer is engaged with a project and has the time to start planning their build early.

Problems don’t always present themselves until they’re coded

That banner looks awesome in the mockup, but now that we see it resized on an iPhone, it looks totally off. Crap. Now what?

Sure, we might have been able to anticipate this issue, but some things aren’t obvious until they’re coded. When a whole site is coded at once, you don’t catch these issues until the end of the project, when you’re running low or out of budget, can’t go back to the client with a change, and just need to get the damn thing finished.

Clients might not recognize an issue until they see it on a live site

If we can’t anticipate every potential issue with a design, how can we expect our clients to be able to? We have clients sign off on a full site design with the hope that they really understand how things will work when that flat mockup becomes a functioning website. But unless they’re also web designers, that’s a tall order. When we don’t let the client see and use the site until the day before we’re aiming to launch, it’s no wonder we’re left with a huge list of requests from the client since “this doesn’t work how I thought it would.”

We lose momentum and the client isn’t engaged

Projects tend to drag for lots of reasons. Sometimes you haven’t prepared a client for how much time they’ll need to spend gathering feedback, writing content, or arranging interviews with their stakeholders. Or sometimes things just aren’t coming together smoothly with the site plan or design. It happens. But by the time we get into development and then pre-launch QA, we’ve lost all the excitement that our project started with.

In the beginning, there are concrete things to see and fun decisions to make. During development, there’s a whole lot of waiting and slogging through for both our team and the client’s.

The client just has to wait, anxiously hoping that we’ve been able to translate their needs into a useful product and that we’re going to meet the timeline their boss is demanding. It’s tough and tiring.

QA is long and exhausting

If you’ve ever done QA on a website, you know it takes a lot of time. There are a few people who genuinely enjoy this work, but it’s truthfully not a task that most of us want to do for days on end. It’s a lot of clicking, screenshotting, and writing, “this is what should have happened but this is what happened instead.” When you have an entire site to QA at once, it can feel like an unclimbable mountain.

So yeah, Waterfall sucks. But what do we do instead?

We had heard a lot about Agile project management, but had our doubts. At a very high level, Agile is a framework for managing projects that involves regular iterative phases (called “sprints”) and teams from different disciplines working closely together. When it comes to web development, the idea is to build prototypes of features early so they can be tested with real users.

Agile (and its specific methodologies, Kanban/Scrum), is often used for software development, and it’s a complex framework that we truthfully haven’t fully gotten into.

But that’s okay, because as website designers and developers who aren’t building apps, we don’t really need to be fully agile. Instead, we can be Agile-ish.

How we experimented with some Agile principles in our web design and development process

We started by thinking through our main process pain points:

  • Dev wasn’t involved until it was too late
  • Client feedback caused design work to be redone
  • Issues were introduced in dev that then spread out to all pages
  • The end of the project is tiring and frustrating for us and our clients

Then, we thought about how we could fix those problems.

Get dev involved as early as possible, without bogging them down too much in the discovery process or bloating our budgets

We didn’t want our devs sitting in every client meeting — that would be a waste of time and budget. Instead, we started to think about when their feedback and input would be the most helpful, and how early we could get them started building the site we were planning.

We realized that we could start planning the admin of the website (how the client would be able to update their content, what those content fields would need to be, how many templates there would be, what types of components might be on the site) way earlier than we had been. By the time we had an approved content plan (which we build out in Gather Content), we could really start mapping out these fields.

That turned into a spreadsheet that the project strategist and developer would work on together.

After wireframes were completed and approved by the client, the strategist and developer could run through the spreadsheet and make any adjustments that came from client feedback or the designer’s ideas. Then, the developer could get started on setting up the admin of the website: setting up the server, building the page templates, setting up Advanced Custom Fields.

This allowed that foundational work to be finished early and reviewed, so we would be ahead of the game when answering questions like, “how is the client supposed to edit this content? Which parts? To what level?”

In Waterfall, those questions would be answered as we were trying to get front-end development done, and there often just wasn’t time to get it right.

Break up design into rounds

This was such a simple solution it feels silly to even present it here. Don’t design all at once. Once we realized we could present design in rounds, we could then start developing in rounds, and QAing in rounds. We hesitated calling them “sprints” for a long time because it felt too official and Scrum-my but that’s really what they are.

Our clients now see a homepage design first, which presents the overall aesthetic of the design, the navigation, header and footer. It’s a good place to start because often changes here would end up affecting the rest of the pages.

Then, we present two or three more pages in another round, then three or four more in a final round. Each round, we tend to get less feedback on the aesthetics, because we’ve already worked through any issues that the client had earlier on.

Use sprints for dev, too!

In Waterfall, a simple bug that could be fixed easily if it was found early tends to proliferate throughout the entire site. An easy fix cascades into a big, time-intensive one to tackle at the end of a project.

Breaking up design into rounds gave us the freedom to explore developing in sprints. Instead of a traditional sprint where you might only work on one feature to completion, we instead decided to do this by pages.

Our developers now take a finished homepage design and develop it completely. It’s then passed to our QA team for review, and then the client can review it. Since the backend is done and set up, we can actually get the client in there so they can practice editing and adding content.

Working like this helps us catch issues super early in the process before they get duplicated across all of the templates on the site.

It also allows the client to provide their feedback and thoughts early, at a point where we can make real decisions about how to proceed. That might mean increasing scope, or reducing the complexity of another page.

Keep momentum going with regular “wins”

One of the major problems with Waterfall is that development and QA feels like spending a million dollars to ship your child off to a training academy, spending three years waiting and expecting them to become a world-class athlete, and then ending up with a bronze medal win. They’re still an Olympian, sure, but they still have work to do and the whole thing feels like a bit of a letdown. You weren’t there to see how hard they worked and the amazing strides they made along the way, so the reveal is kinda anticlimactic.

For both us and our client, there were very few visible wins during the development process before we changed our process. We tried to high five our developers when they finished a milestone on their end, but often no one else could see it because they were developing locally.

By working in sprints, we regularly have real, live, finished pages to review!

This keeps the momentum going because we’re seeing the fruits of our labour come to life quickly, we’re problem solving together, we’re not panicking about budget or timeline, and the client can actually see that we’re doing what we’ve said we’re doing. And there’s a lot of trust that comes from that kind of visibility.

Knit sweater

Final thoughts

We’re super happy with how our new agile-ish process is going. We’re still learning, adjusting, and getting better. We’re figuring out how to manage scope and budgets more effectively (more on that another day).

When we asked our team how they felt about our new process, a metaphor quickly materialized because we’ve got a prolific knitter on our team… and we love metaphors.

Developing a website is like knitting a sweater.

In Waterfall, a developer has been given a pattern for a sweater and told, “Knit this as fast as you can with whatever bits of yarn you have hanging around ‘cause we don’t have much time or money left. But it needs to look exactly like this pattern okay?”

So the developer rushes through the sweater, not realizing that there are a bunch of holes and stitching errors in it the entire time. Then she hands it off to be reviewed in QA, and everyone says, “Um, hi? Look at this mess! This is the wrong colour, and you did a cable knit here when I meant it should be a lattice.” And the developer then has to go back and painstakingly pick through her stitches to fix them, but they can never be as perfect as they could have been if they were done right from the beginning. Oh, and it takes longer than it would have taken if it hadn’t been rushed.

In our new Agile-ish approach, the developer helps build the pattern, understanding how the sweater should look and feel. She starts by knitting a small test swatch and asks everyone, “Is this what we were all imagining?” If she needs to make changes, it’s easy. She’s got the time and budget to use the right materials and isn’t stressed, so her knitting comes out much nicer. There are still mistakes, but we catch them before they take over the whole sweater.

What a nice little analogy hey? Now go knit a sweater… just don’t do it all at once.

The post Agile-ish: How we adopted some Agile principles into our custom WordPress web design process appeared first on Full Stacks.

]]>
The Readability Formula: Making Your Website Easy-to-Read https://fullstacks.pro/the-readability-formula-making-your-website-easy-to-read/ Thu, 22 Feb 2018 00:00:00 +0000 https://fullstacks.pro/the-readability-formula-making-your-website-easy-to-read/ Customers and clients don’t like to struggle: give them a comfortable reading experience, and they’re more likely to give you more of their time.

The post The Readability Formula: Making Your Website Easy-to-Read appeared first on Full Stacks.

]]>

Have you ever been reading an article, and after a couple of lines started to skim and then thought about closing the tab — even though you’re really interested in the subject and set out with the intent to read the entire thing?

You can tell the content is written well, and you really want to make it to the conclusion, but something’s preventing you from doing so and you can’t quite put your finger on it…

…could it be that the typographic choices on that website are causing you to stop reading the content? 😱

Readability is about more than just having your content make sense — you can spend a pile of money on a copywriter and check reading levels, but if the layout makes reading difficult you might as well set that money on fire. The right balance between font size and line length is a big difference-maker in the science of readability.

If a font size is too small and the line length too long, readers will have to strain to read the text, which causes their eyes to fatigue. On the other hand, if the font size is too big (making the line length too short), readers are forced to jump to the next line of text too quickly, which — you guessed it — is also hard on the eyes! (You don’t want your audience looking at their screen like this while reading your content.)

The last thing you want is for your website to be referred to as “too hard to read”. Customers and clients make choices quickly when you put them at ease. A comfortable reading experience leads visitors to a) easily read your content, and b) make decisions faster.

Line length & font size

Diagram of text illustrates correct line length for easy readability (it is 75 characters)

Making things as easy as possible to read isn’t a new concern — for years typographers have said 65 characters per line is the perfect line length (or “measure”) for print. However, it’s 2018, so let’s embrace our digital-first way of life. Here is the golden rule to keep in mind for web typography:

45 to 80 characters (per line) is the ideal line length for text on websites.

The final number of characters per line depends on the font, but so long as your content is falling within the above parameters, you’re making it as easy as possible for visitors to read your content.

For evidence of this line length in action, look at one of the most popular sites for publishing: Medium. With a maximum of around 80 characters per line (and a healthy font size of 21px on large screens), Medium ensures extreme readability and comfort.

What about the size of the font?

Line length and font size work together to create an optimal reading experience — the font size must also be large enough to be easily read. What’s the point of using a proper line length of 60 characters if your body text is set to the same size used for side-effects on prescription drug packaging? (There’s a reason those side-effects are shown in such small print — it’s because they’re trying to discourage people from reading them.)

Your base font size (for large screens) should be somewhere in the range of 18px to 26px.

However, you can’t just increase the font size on your website, pat yourself on the back and be done with it. We have to consider endless screen sizes, large and small!

Larger font sizes typically look strange on smaller screens, because they take up too much real estate. This creates an uncomfortable reading experience because lines of text get cut off too quickly, forcing readers to slow down.

A smaller font size must be delivered on smaller screens.

To keep the line length of the text in that desired 45–80 character per line range, the font size needs to be reduced on the smallest screens (i.e. mobile devices). Using a smaller font size on small screens won’t shock visitors to your site, as people typically hold their phones and tablets closer to them when reading.

Enter: Fluid Type

The great thing is we can use fluid type to achieve this change in font size! Fluid typography resizes smoothly to match any device width, meaning we can present a larger font size on larger screens and a smaller font size on smaller screens — and adjust for all screen widths in between.

For example, our website displays the body copy at 21px on large screens and 16px on small screens. In between those two extremes, the font size will adjust proportionally to the size of the window or screen it is being viewed on — which is where the “fluid” part of the name comes in.

Example: Wikipedia

Jurassic Park wikipedia page to show the standard Wikipedia line length

Wikipedia is a great resource, but unfortunately on large screens it typically provides a subpar reading experience. In the screenshot above, the line-length is as long as 104 characters, and the font size is only 14px!

Using “Skinny” — a Google Chrome extension which limits the width of any web page to improve website readability on large screens — we can see how much easier it is to read a Wikipedia article with a line length of 50 characters and a font size of 18px.

What about the space between the lines?

Line height (the vertical space between lines of text, also known as “leading” or “line spacing”) is important as well.

Much like line length and font size, line height also affects how people read. If it’s too tight, the lines of text become hard to scan. Too loose and the lines of text appear to be unrelated to each other, which is confusing for readers!

The perfect line height depends on the design and size of the font itself. There is no magic number that works for all text (although it’d be cool if there was!).

A line height of 1.5 times the font size is a good place to start from, and then you can adjust accordingly.

Don’t try to do this all alone. Have other members of your team take a look at different line heights to get their opinion on what is the most comfortable to read!

Keep in mind that smaller text typically needs more line height, not less. This is because people scan horizontally and vertically when reading and a line height that is too small (also called too tight) makes people jump over sections. For example, our body text has a line height of 1.6x the font size, but our larger header text has a line height of 1.3x.

The word "Reading" is laid out on a couch

Line length + font size + line height = comfortable reading

Although it might seem like a small thing to consider, paying attention to (and improving) the design of the text on your website is an impactful way to remove many of the obstacles people face when reading online content.

People don’t like to struggle: provide your customers and clients with a comfortable reading experience, and they’re more likely to give you more of their time.

There are many other things to consider when choosing the typography of your website (font choice, font colour, hierarchy, etc.) but creating the right balance between font size and line length will be a difference maker in getting your clients and customers to actually read your content.

People need to read what you have to say to understand why they should contact you. Remove as many barriers as you can! Make people as comfortable as they can possibly be. People like ‘easy’ and it’s up to you to give ‘easy’ to them.

______________

If you want to dive into even deeper typographic waters, be sure to check out Butterick’s Practical Typography Guide — the “Typography in Ten Minutes” section is a great place to start!

The post The Readability Formula: Making Your Website Easy-to-Read appeared first on Full Stacks.

]]>
There is Magic in Storytelling (and in Speedy Websites) https://fullstacks.pro/magic-storytelling-speedy-websites/ https://fullstacks.pro/magic-storytelling-speedy-websites/#respond Thu, 26 Oct 2017 00:00:00 +0000 https://fullstacks.pro/magic-storytelling-speedy-websites/ How do you design and build a website that sees a 4000% spike in traffic over a single two-week period each year?

The post There is Magic in Storytelling (and in Speedy Websites) appeared first on Full Stacks.

]]>

When a client comes to us with very specific goals and also understands the value of planning and research, we will build a website that exceeds those goals.

You can also read our case study about this project.

At our first meeting, Fringe Theatre already knew what they wanted from their new website, and then we had to ensure the redesign would also be all that their audience needed it to be.

Fringe Theatre puts on the largest Fringe Festival in North America, the Edmonton International Fringe Festival, each August and delivers theatre programs and community events year-round as well. Fringe Theatre brings artists and audiences together to celebrate creativity, risk, craft, and community.

It was important to the Fringe Theatre team to:

  • Sell more tickets online
  • Be able to easily update the website themselves
  • Integrate the website properly with their chosen ticketing program
  • Fix issues caused by a previous agency’s poorly implemented migration

It was important to us to help the Fringe team:

  • Introduce more people to “fringing” (more first-time ticket buyers)
  • Add new pages to make first-timers’ experiences more enjoyable
  • Connect with people attending the Fringe Festival from outside of the city
  • Clarify key messaging to avoid alienating people who weren’t already “fringers”

The Build

The open, collaborative environment at Fringe Theatre made it easy for our two teams to work together during the research and planning phase for this project. Fringe fielded all of our (very many) questions patiently and always kept us up-to-date about their plans, hopes, and dreams.

We had to migrate a temporary Squarespace site and a custom CMS site, along with redirecting three different URLs to the new Fringe Theatre WordPress website. The custom CMS was quite old (and still live), while the Squarespace site that was meant to replace that site only had small pieces of the content migrated over properly. In short, things were a mess and cleaning up the previous mishandling was time consuming.

When you are choosing a partner to design and develop your website, please choose one that knows what a migration plan involves!

Technologies

  • WordPress
  • PHP7
  • WP Super Cache
  • TablePress
  • Advanced Custom Fields
  • Gravity Forms
  • Isotope/Masonry
  • Featherlight
  • FastClick
  • Google Tag Manager

Key Components

Evergreen vs Festival Content

Most people think of Fringe Theatre as just the festival that happens every August, but the Fringe offers shows and venue rentals all year round. One challenge with the website design and development was providing two states for the website; “Evergreen” (content that is relevant year round) and Festival On (content that is only relevant during the Fringe Festival every August).

Having both Evergreen and Festival content input areas in the site editor makes it easy for content to transfer smoothly into Festival mode during the festival, and then right back to Evergreen mode when the festival ends.

When a visitor is viewing a page on the website, there’s a quick code check to see if the site is in Festival mode. If it is, the code then checks for festival content. If there is none available, the code serves up the Evergreen content. This way, there is no extra work or duplicate effort for pages that do not need specific festival content.

Custom WordPress content block instructions

No — this page does not have Festival content

Unique content block instructions for WordPress

Yes — this page has Festival content

When it’s time for the festival, a single setting is changed in the admin area and the site effortlessly flips into Festival On mode. When the festival is finished, changing the setting again puts the site back the way it was. We made the process as simple as possible!

customization for wordpress content blocks

But it isn’t just the page content that changes in Festival On mode, the menu changes as well.

During the Festival, visitors are mostly interested in seeing content related to the Festival. When Festival On mode is activated, the menu order switches and the Festival link becomes prominently positioned. On mobile devices, the Festival tab is active when you open the menu, eliminating a click to find content.

Navigation bar changes in WordPress
Navigation bar changes in WordPress

Adding Content to the Site

The Edmonton Fringe Theatre relies heavily on volunteers which has its own set of challenges around knowledge transfer and a general knowledge of WordPress. We kept this in mind when developing the administration area of the website and made sure to provide:

  • Lots of on-page explanations
  • Content blocks that can be added and easily reordered to control page layout
  • Custom templates for pages with extra functionality
  • A living document user manual written to address the most common tasks first

The Right Amount of On-page Explanation for Fields

The best documentation is contextual. When you’re doing something, it is much easier to have instructions right in front of you, instead of having to refer to a separate document. Additionally, when information is easily accessible it is way more likely to actually be used.

We wrote very clear instructions and guidelines for fields so that people adding content to the site know exactly how to use the fields they see.

Screenshot of custom WordPress content block instructions
Content Blocks Are Easy to Add and Reorder

Each page has a ‘Layout’ area for adding content blocks. Content blocks can be expandable, basic text content, call-to-action buttons, galleries, and so on. Each content block can be drag and dropped to reorder the content on a page. We focussed on simplicity in the administrative and editor areas of the website so future volunteers could be trained quickly.

WordPress backend content block examples

We also made it easy to develop new content blocks because each content block has a separate *.php template file, *.scss file, and *.js file. The same layout section is used on both the Evergreen and Festival tabs for consistency.

Custom Page Templates with Extra Functionality

We built a template just for venue pages that automatically displays the correct form for that page. This makes creating and editing venue pages simpler. For example, if the venue rental form ever needs to be updated, the change happens in just one place and be pushed automatically out to all venue pages.

A Living User Manual

Let’s be honest, user manuals are usually pretty generic, boring, and not the easiest content to digest. They’re often overwhelming until you use them enough to know where the information you need is actually located.

We avoided overwhelming the site editors and made it easy to train new volunteers by writing a user manual that addresses the most common tasks before diving into anything else. We say “living” user manual, because it is a shared Google Doc. Things change, and in the interest of always future-proofing the work we do, we need a way to easily update manuals for our clients.

Screenshot of the table of contents from a wordpress user manual

We also included an appendix that goes into detail on the more technical aspects of the site, such as shortcodes. Most people won’t need to read that part, but the information is there for the extra keeners!

Improve The Show Finding Experience

Edmonton Fringe Theatre uses a separate third-party ticketing website that is difficult for visitors to use. We wanted to make finding shows a better experience for fringers (and you know, for ourselves as well). We reached out to the third-party service that handles the ticketing site, which led to the following:

The API Plugin

The ticket provider has a SOAP API that we used to pull show and performance data into the website. As with many APIs, there was a limit to how many times an API can be queried within a given time frame — this prevented us from doing real-time show data pulls. We built our plugin to pull from the API at set intervals and then save the show data to both our database and to a JSON file.

The API plugin was responsible for pulling, storing, and cleaning show, venue, and show data, and also handled the random show picker functionality. Ticket sales were handled by a separate ticketing site.

Screenshot of the Fringe Festival page
Search and Filter

Edmonton’s Fringe Festival has over two hundred shows! That’s a lot of choices to pick through to find the ones you want to see. To make things easier, the Shows page has a search field as well as a slide-up ‘drawer’ with one touch filters that you can apply to the show listing.

Please note: unless the Festival is on, you will not be able to view this functionality live on the Fringe website.

Custom slide up filter drawer for wordpress

The filter “drawer” had to accomplish an important job — it needed to work on all kinds of device, both in portrait and landscape mode, and be easy for people to understand its purpose and then use.

On mobile devices, the filter categories are closed when the drawer is opened. When a category is expanded, the website checks the height of the screen and then scales the size of the drawer to fit. If there are too options in a filter category to fit the screen size, the list of filter options becomes scrollable.

On mobile devices, the filter categories are closed when the drawer is opened. When a category is expanded, the website checks the height of the screen and then scales the size of the drawer to fit. If there are too options in a filter category to fit the screen size, the list of filter options becomes scrollable.

Each show also has filter links for genre listed above the show’s title providing a second way to filter shows.

Fringe theatre performance times 2017

Random Show Picker

After we thought about how our team had enjoyed fringing in the past, we knew we wanted to build the Random Show Picker! We developed a functional shortcode that uses AJAX to find a random show, then return the name of the show with a link to buy tickets.

We made sure a future performance was scheduled for the randomly selected show so that a person couldn’t get a recommendation for a show that had finished its run.

The Random Show Picker was used 14,379 times during the Festival. How do we know? We used Google Tag Manager to not only record when the Random Show Picker was used but to also record the name of the show that was picked.

Website Performance

You likely know that website performance is a big deal. Google is favouring faster, lighter websites. The Fringe website traffic increases by over 4000% during the festival, so it is very important to keep performance top of mind.

Performance Testing Throughout Development

One of the first plugins we installed in our development environment was Query Monitor. As our developer built the site, she watched how many queries were needed and how fast pages were rendering to find efficiencies that she could build into the website.

Only Load Needed Resources

WordPress themes are typically built to include scripts on every page, regardless of whether or not the script is needed on that page. That can slow down the site, so we built the Fringe theme to make sure that only the necessary scripts load on each page. For example, if a page doesn’t include a gallery, the gallery script won’t load.

The Web Server

Unfortunately we weren’t able to move the Fringe site to a specialized WordPress host this year, so we had to make do with the existing web hosting setup. We switched over to PHP7, used gzip compression, mode_deflate and mod_expires — basically did everything that we could do to improve site performance.

We also reached out to the hosting company to discuss the huge spike in visitors during the Festival. We wanted to know:

  • How would they handle the additional traffic? Would they shut the site down if we went over on the bandwidth, or would there be an additional charge?
  • Did they have any advice for handling sudden spikes in traffic like this?

When we know that there will be a traffic spike, it is valuable to talk to the hosting company in advance about anticipated server loads. Obviously this isn’t possible in all cases — but we knew in advance what was coming so we were prepared. Even with our advanced planning and preparedness, Fringe visitor numbers blew past our wildest estimations! This was great for Fringe but not so great for their hosting — which was strained for resources. We will be moving their site to a dedicated WordPress host before the 2018 Festival.

Caching

Aside from the server-side changes we made to help with caching, we also installed a caching plugin. Now pages can be served as static HTML, refreshed on a regular basis unless changes are made to a page, in which case a new static HTML page is generated when the changes are saved.

Static HTML renders faster, which means that there is less load on the web server and the web server has more resources to handle traffic spikes.

The 2017 Festival

2017 was a record breaking year for the Fringe Festival! An increase of 8,000 tickets sold from the previous year meant that there were 400 sold out performances and Fringe artists earned more than $1.15 million from ticket sales.

“I’ve never worked with a consulting company that had such incredible attention to detail. I’ve lead four organizational website redevelopments in my career and this is the most sustainable, turn-key product I’ve seen delivered.

They truly considered our organization needs, constraints, and goals, then delivered a phenomenal product that not only solved our problems, but also bridged gaps we didn’t even realized we had. Everything from the back-end system to supporting documentation and training tools were constructed with our team in mind – tailored to meet today’s needs, while also providing a structure from which we can grow and expand.”

— Bobbie O’Connor, Fringe Theatre

The Future

We’re excited to continue working with the Fringe Theatre team to continually improve the site’s performance and increase ticket sales. We’re now armed with detailed analytics from many months of Evergreen mode and two full weeks of Festival mode. We’ve made recommendations for changes and new content pieces to make things even better for ticket buyers during the 2018 Festival!

Did this blog post make you think of an upgrade your organization needs to make? Get in touch with us to plan an investment in your website!

Start Your Project

The post There is Magic in Storytelling (and in Speedy Websites) appeared first on Full Stacks.

]]>
https://fullstacks.pro/magic-storytelling-speedy-websites/feed/ 0
How to Avoid a Bad https Migration https://fullstacks.pro/how-to-avoid-a-bad-https-migration/ https://fullstacks.pro/how-to-avoid-a-bad-https-migration/#respond Wed, 25 Oct 2017 00:00:00 +0000 https://fullstacks.pro/how-to-avoid-a-bad-https-migration/ We've seen some gross examples of poorly executed https migrations. Read this and stay safe!

The post How to Avoid a Bad https Migration appeared first on Full Stacks.

]]>

If you’re keeping an eye on news from the web development or marketing world, you’ve probably heard that Google is prioritizing websites using https in a big way.

For one, if a site has any forms on it at all (search, contact, you name it), Google’s Chrome web browser will soon be putting warnings in the address bar every time a site has a form without a security certificate set up to protect the info users might put in it. For another, whether or not you’ve got https in place is a factor when Google decides where to show your site in search rankings.

This is a big deal, with far reaching consequences, and we’ve been eating, sleeping, and breathing https migrations of late to make sure our clients are eased through this change without disruption.

Sometimes people don’t come to us until after they’ve already migrated. And sometimes, whomever conducted their migration missed a few things. Or a lot of things.

The thing is, an https migration is just that — a migration.

While it’s not as involved as relaunching your site with a new design, it nevertheless touches every aspect of the site. If you don’t go into this migration process armed with the necessary foreknowledge needed to make sure everything that could possibly be affected is carefully handled.

Illustration of a green duck face stuck inside a broken lock

Oh, The Things We’ve Seen

Perhaps you’re wondering how a process that’s supposed to boost your site’s rankings could possibly send them plummeting instead.

Let’s start with what it looks like from the web development side of things. Here is the kind of things we’ve seen, sometimes all on the same site:

  • No sitemap URL given to Google Search Console, or the one in the account redirects or produces an error
  • Crawling the site reveals numerous 404s and 301s
  • Not all internal links have been updated to use https
  • The SSL certificate doesn’t cover off all domain variants
  • The non-www version of the web address doesn’t redirect to the www version (or vice versa, if the site’s canonical URL isn’t www)
  • The http versions of the URL don’t redirect to https
  • There is no sitemap address in the robots.txt file, or the sitemap address hasn’t been updated to use the https version
  • The site files haven’t been updated to link to secure versions of resources (such as a Google Fonts link, a stylesheet link, or a jQuery link)
  • Pages or posts have insecure content inside them (such as a YouTube embed using the http version of the video address)

Not good.

But what does that actually mean, from an SEO perspective?

To start with, a good number of the scary things we have seen make it harder for Google to figure out what do with your website, and how to interpret it.

For example, if you don’t have a readily accessible sitemap, Google has to figure out for itself where that might be, and what the most important pages of your website are. So unless you give Google a sitemap, there’s ample room for important pages to get missed entirely. And a page needs to be indexed to rank. Ignoring your sitemap is a big risk, and such a small thing to correct.

The same applies if you haven’t set up your site to bump visitors over to a consistent domain (such as https://www.yoursite.com) no matter what. For this one, it’s worthwhile to remember that computers are incredibly literal-minded. A search engine will treat the following as distinct pages:

http://yoursite.com
https://yoursite.com
http://www.yoursite.com
https://www.yoursite.com

You need to help search engines figure out which one it actually needs to pay attention to, so it can stop splitting its focus. This is also why you need to be consistent about how you write your internal links, and make sure your redirects are directing to the right place!

Similarly, your sitemap must accurately represent your website. Tell Google Search Console (GSC) where your sitemap is located — this also helps Google crawl your site! And, when you submit your sitemap for crawling, it’s important that you update your GSC account if the location changes. Your robots.txt, which is the file that tells search engines what on the site they’re allowed to look at, should also have a line for your sitemap. This needs to be current and accurate too.

As far as 404s and 301s go, 404s are an obvious problem. Search engines can’t index what they can’t find, so if you have a page that resolves in a 404 when it shouldn’t be, you’re missing out. What’s worse, 404s are a signal that your site is lacking quality content, and Google is actively watching for quality when figuring out rankings.

301s are a bit more insidious — they’re generally fine right up until one leads to the next and the next before the user is given a page address that actually loads (this is commonly called a ‘daisy chain’). The more times a user gets redirected before a page load, the more you water down any authority the page may have.

How about that SSL certificate? If you’re going to redirect visitors to one version of the URL anyway, why does it matter if a bunch of versions people are never going to see don’t have a security certificate?

Simple. If someone types the https version of one of those other URLs in their browser, or clicks on a link that directs to it, they’re NOT going to get redirected like they’re supposed to. Instead, that visitor’s browser is going to detect that the SSL certificate doesn’t cover that address, and it will stop everything to display a scary-looking error instead. So now you’ve got a visitor looking at a page with a security alert, instead of the website you’ve spent so much time polishing.

Search engine spiders don’t like seeing that any more than humans do.

Finally, there can be links trying to load insecure content into your website. This prevents the page from fully securing, and is why you’ll sometimes see a page with an https address, but without that reassuring green lock in the address bar. The error happens when your content comes from source that doesn’t use https itself, and can be anything from a Javascript library the site relies on, to a video embed inside a page from a service like YouTube or Vimeo. The end result is a page that’s not as secure as it should be, and search engines will treat it accordingly.

That’s a lot to keep in mind! But, working to avoid these kinds of problems is how you’ll avoid that worse case scenario: a big drop your search rankings and site traffic.

Illustration of a graph showing a large drop

Prevention and Troubleshooting

Now that we’ve covered what a bad migration looks like, let’s talk about what you can do to prevent this whole situation from hurting your company.

Or, if you already suspect you’ve got a bad https migration on your hands, what can you check your site against to figure out what you can improve?

As with so many things, there’s no real trick to this aside from having a plan and being methodical about it. We use a checklist to keep the whole process as systematic and manageable as possible, whether we’re starting a fresh migration or fixing up one that’s already gone live.

We have put together an overview of what we look for in a solid https migration. If you’ve already committed to https but aren’t getting the results you expected, comparing this to your own site can help you figure out where you have room for improvement.

Are you in panic mode already? You know something went wrong, and you just plain want it fixed. Or you’re looking at a long list of items to address, and you’re overwhelmed at the thought of it all. Not everyone has the time or resources to make these kinds of fixes in house, and that’s okay too!

If this is your situation, get in touch — we will get you back on track, and set you up with strategies for the future too.

Before Migration

This part is the most intensive, and hands down the most important. Before you commit to that SSL certificate, addressing these items will make sure your site is in great shape.

  • Consider a staging site. If you don’t use a managed hosting service like WP Engine (and even if you do), this should be the first thing you put into place. Why? Because any time you’re making a significant change on a site, things can go wrong. A staging site gives you room to try out your changes in a safe environment before you commit to them live. It’s half due diligence and half peace of mind.
  • Make a backup. Whether you’re using a staging site or not, do not be tempted to forgo this step. It’s not possible to take too many backups — you never know when you’ll need to roll back a change in a hurry. You should have a current copy of all your key site files (for example, the whole wp-content directory if you’re using WordPress), and a full export of your database. You can do this manually, use a backup service, or use your hosting service’s backup feature; just make sure you know how to do a restore with your chosen method! We love the plugin WP Migrate DB for database backups, and it’s got another great feature we’ll use later on in this process too.
  • Crawl those links. You’ll need to take a good look at your site’s internal links with a program like Screaming Frog. This will tell you whether you’ve got broken links (404s) that need fixing. It will also show you links that redirect (301s), such as links to internal pages using a version of your URL that they shouldn’t be (for example, if your canonical address is http://www.example.com, check for links using http://example.com instead). Fix everything you can now, before you commit to that SSL certificate.
  • Take the Before picture. Use Google Analytics and Google Search Console to generate your organic traffic reports. If you’re not already using these tools, now is a great time to start! In Google Analytics, export a copy of your organic traffic landing pages. In Google Search Console, do the same thing, but for the keywords people are using to find your site. Set the reports to cover your most recent three months.
  • Check your site files for absolute (hard-coded) links. As soon as you update your site to https, these are going to turn into unnecessary redirects to be a problem, so make sure you know what to watch for and fix as much as you can now. If you’re linking to resources like Google Fonts or jQuery, make sure the URLs use the https form now. If you’re linking to pages on your own site, make a list of what needs to be changed to https at launch, or if you’re using a CMS like WordPress, consider rewriting those links to include a function like home_url() so your site will automatically fill in the correct version.
  • Check your pages and posts for content from external resources. This information will be in the crawl you did earlier. If the links don’t use https in the address, update that now. This might be a form you’ve embedded from a third-party service, a YouTube iframe embed, or an image file that’s hosted on another website. If the service doesn’t use https, find an alternative service that does.
  • Check your redirects. If your site has any 301 redirects set up, this is the time to prepare them for the change. Depending on your website, they may have been set up directly in your .htaccess file, or with a plugin like Redirection. If the redirects are in your .htaccess, prepare a copy updating your 301s to use https addresses for the destination. If it’s in a plugin like Redirection, confirm you’re not using absolute URLs for your redirects if you don’t have to, or prepare the updates as directed by the plugin’s documentation so it’s ready to go as soon as you need it.
  • Check your canonical URLs. These show up in a <meta> tag in your site’s header. If you’re using a CMS like WordPress, check if these will update automatically when you change to https, or ensure you know how to update these if it doesn’t. If you’re not using a CMS, prepare a copy of your site files that will use https.
  • Check your robots.txt. Make sure it’s not disallowing anything important, and prepare a copy linking to your sitemap with an https address.
  • Check your sitemap. Depending on your setup, you’ll either have to prepare a copy that uses https yourself, or you’ll be using a plugin like Yoast that auto-generates the sitemap for you. Make sure you know which category you fall into and prepare accordingly!
  • Check your Google Search Console settings and verify your https domains. You should have a Google Search Console property set up for every version of your site’s domain (both www and non-www, plus now http and https). If you can, make sure they’re all verified now, and that the settings from the http versions are also set up on the https versions.This will help with tracking once you’ve completed your migration.

During Migration

You’ve made it through the preparation stage, and you’re ready to order that SSL certificate — excellent!

  • Take a FULL backup of your site. This means a copy of your database plus all your site files (such as the entire wp-content directory, for a WordPress site). The idea is to capture all your pages, media files, themes, plugins, settings, and anything else unique to your site. Don’t be tempted to skip this step, and take as many as you need throughout the process!
  • Request and install your SSL certificate. What this involves will vary based on your hosting situation (for example, whether you’re using a managed hosting service like WP Engine, basic hosting with a cPanel install, or any one of a number of other hosting options). Whatever your situation, follow the directions in their documentation, and don’t be shy about contacting their support. You’ll need a certificate (or certificates) that covers all applicable variants of your site’s url. In many cases, certificates from the free service Let’s Encrypt will do the trick, but it’s worth your while to shop around and make sure your specific needs are covered off by whatever certificate authority you choose.
  • Apply your site changes live. Remember those updates you made to your site files? Now is the time to apply any updates you made to your theme files, robots.txt and any other files to your live site. This is also the time to update and verify your 301 redirects.
  • Set up your https redirect. This is what will make sure visitors to your site are given the https version of your site no matter what. It can be done with some rules written into your .htaccess file, but if you’re using a managed hosting service, or if you have a security plugin like iThemes Security installed, they may have settings to help you put this in place without touching the .htaccess file directly. Again, when in doubt, contact your hosting service’s support for help.
  • Test those https redirects. Try out all the versions of your URL (non-www, www, with https, without https, with a / at the end, without a / at the end) and make sure they’re all directing to the same canonical version of the URL. For example, on Full Stacks, the canonical would be https://www.fullstacks.pro — no matter what version of that address a person arrives from, they should see that one in their address bar.
  • Rewrite your internal URLs. You’ll need to make sure none of the internal links on your site are using anything other than https:// in the URL. This ensures consistency when people browse your site, and prevents unnecessary 301 redirects along the way. If you’re using WordPress, this is where WP Migrate DB really shines. It includes a find and replace function you can use to search your entire database for the non-secure version of your URL and replace it with the secure one. Whatever you use, make sure you backup your database first!
  • Crawl, crawl, crawl. Just updated your theme file to get rid of non-https links? Crawl the site. Added in redirects? Crawl. Rewrote links in your pages and posts to use https internal links? You guessed it, crawl. Just like with backups, when in doubt, crawl those links. This will tell you right away if you have any links that aren’t updated, or if you’ve suddenly got a 404 error, or if you’ve introduced a 301 you didn’t mean to. By the time you’re done, none of the internal links on your site should be using http:// in the address.
  • Check the status of your SSL certificate. This is as simple as plugging your site’s address into a service like SSL Test. You’re looking for the test to come back Trusted, and ideally with an A rating.
  • Annotate your migration in Google Analytics. Google Analytics has a handy little feature that lets you make note of key events right on the report graphs. We use it any time we make a change to a site, like routine maintenance, or — you guessed it — migrating to https. If you get in the annotation habit, you’ll have one more tool at your disposal if you notice any strange changes to your site visits.

After Migration

You’re done the hard part, but there are a few things left to take care of.

  • Make sure all of your pages show that little green lock icon next to the address bar. Remember how we checked for content from external resources in the pre-launch? This is because pulling any external content (like images, or video embeds, or stylesheets, or fonts) that aren’t secure into a secure site causes a conflict. In order to make sure your site is fully secure, you’ll need to hunt down every last one of these and fix them. Fortunately, there are services out there, such as SSL Check, that will crawl a website and find the problem spots for you.
  • Make one more crawl. Verify there are no more insecure internal links, and you don’t have any fun new 301s or 404s.
  • Update Google Search Console. Make sure the https versions of your URL are verified, their settings match the http versions, and the robots.txt is showing correctly. Submit your sitemap.
  • Update Google Tag Manager. If you’re using tags or triggers, you might have some set up with full URLs instead of a Google Tag Manager label. Make sure to update all of those to https, or better still, change them over to a label like {{Click URL}} instead.
  • Update your ads, affiliates, and any third-party extensions you’re using. These will all need to point to your shiny new https address going forward.
  • Monitor your site traffic. You’ll want to watch for big traffic drops. Google Analytics’ custom alerts can help you stay on top of any traffic changes, or you can set up a rank drop alert in a platform like STAT. Keep an eye on these over the next several weeks.
  • Monitor the crawl status of your https URL. Keep an eye on its indexation status, visibility, and watch for any errors that crop up on both the http and https site versions. Like with your rankings, you’ll need to check back on this one regularly.
things you need to check when migrating to https, illustration of facebook, instagram, and twitter icons, and print materials

Other Things to Consider

Great, you’ve migrated! But, what about all the places you’re linking to your website? Take this time to check any other resources you have that direct to your site, and decide whether you need to update the web address on them as well.

Depending on your situation, this could include:

  • Social media links
  • Web ads, such as AdWords, Facebook Ads, LinkedIn ads, or any other ad networks you may have submitted to
  • Non-network web ads
  • Other third-party traffic like linkbacks
  • Print materials, such as brochures, business cards, or anywhere else you may be printing out the full site address

Websites are a Work in Progress

Whether you’re preparing for https, or have already migrated over, these guidelines will help keep your site on track. But, they represent just one part of the larger picture.

Committing to https is important. For many sites, https is about to be non-negotiable. The thing is, while https will help you out, it’s no substitute for a strong content strategy, or solid link building. It won’t help your user experience either.

Just as missing out on one of these steps in an https migration can make the difference between improved rankings and a rankings drop, adding https can fill in a blank spot in the canvas of your overall web strategy.

At the same time, it’s only one piece of the whole. If you’ve committed to https, why not also take the opportunity to step back and see if there are other spots you could improve on by visiting Our Process page?

The post How to Avoid a Bad https Migration appeared first on Full Stacks.

]]>
https://fullstacks.pro/how-to-avoid-a-bad-https-migration/feed/ 0
So You Need a (New) Website https://fullstacks.pro/so-you-need-a-new-website/ https://fullstacks.pro/so-you-need-a-new-website/#respond Wed, 08 Mar 2017 00:00:00 +0000 https://fullstacks.pro/so-you-need-a-new-website/ It's time to put on your thinking cap!

The post So You Need a (New) Website appeared first on Full Stacks.

]]>

You’ve hit that point. You keep hearing about how important your web presence is to your brand and your marketing, and you know it’s time to build a website or revamp your current one. But, you feel like it’s hard to get a straight answer about what’s involved.

What does it mean to build a website for your business?

Let’s get the elephant out of the room first. Why not just sign up for a Squarespace or Wix account?

The short answer is that it depends a lot on what you’re looking to get out of your website. If you’re on a tight budget, mostly need a website for the basics (like your contact information and your hours of operation), or aren’t too worried about how distinct your site looks, then a website builder like Squarespace or Wix may truly be be a great option for now.

Buuuut…let’s say it’s time to make your business stand out. Maybe you launched your last website when Netscape was still a thing. Maybe you’re tired of being on the third page of Google search results. Maybe you never quite found the time to build a website at all.

But now you’re ready.

You want your website to demonstrate what sets you apart from your competitors. You want it to say something about your business ethic and your brand. Surely if you build a shiny new website, the business is going to come rolling in.

It’s time to ask your niece to build something for you, right? Or your buddy knows this great freelancer, why not give him a call? They’ll know all about SEO and sitemaps and design and Google Analytics and copy and —

""

Maybe not.

It’s straight talk time. While it’s true there are some really great people out there doing work for hire, there are a lot of things going on in a well-constructed website, and each of them requires a good deal of time and expertise to master. If you want a website that’s going to look good AND be easy to use AND rank well on search, you’re looking for a unicorn to find one person who is an expert in all of those.

""

If you’re aiming for a website that’s distinct, professional, easy for both you and your clients to use, flexible across devices, and well-ranked on search engines, this is where a digital agency with a well-rounded team really shines.

So, what should you expect when you sign up for a professionally-built website then? Well, here’s some highlights.

A Needs Analysis

This will figure out what purpose the website is fulfilling for your business and how best to structure it to reach your base. Depending on your situation and need, this could include a website audit (if you have a site already), keyword research, competitor research, and so on.

A Site Map

This details how the new site will be structured. It’s usually a chart showing the top-level (most important and prominent) pages planned, plus all key sub-pages presented where they would appear in the site’s menu.

Wireframes

The wireframes will show how each major page type will appear on the final site, including user experience details like the how the navigation will function. Wireframes determine the UX (user experience) of the website — what the hierarchy of information should be so they can find what they need, where (and what) elements should be included on a page, and what key messages need to be featured.

Visual Design/User Interface Design

This is where the aesthetic elements of the website are created and applied. The skeleton defined by the wireframes is dressed up with brand colours, typefaces, imagery, iconography, and any other assets that are required to define the overall look — and feel — of the website.

Hosting and Domain Registration

If you don’t already have these in place, you’ll be set up with a domain (the address of your website) and hosting (the place where all your site’s files live to produce a functional website).

Content Strategy

This is all the content that will appear on your website, from what to say on your pages or what blogs posts to write, to what kinds of images or videos to put up, to how to say it all in a unified way that best represents your brand.

SEO (Search Engine Optimization)

This is all the little details that affect how search engines read your site and decide where it should appear in their rankings.

The Website Build

This is the ‘code stuff’ where the design is turned into a fully functional, interactive website. Depending on your needs, it can include a custom theme, custom plugins, interactive details, or business-specific functionality (like a shopping cart, live chat, or region targeting). It should always include responsiveness so your site will work well no matter what device or web browser your audience uses to view it.

Content Loading

Once the website is built and you’ve pulled together all your content, then it’s time to combine the two.

A Launch Plan

This is all the things that will make sure everything goes smoothly at launch. If you already have a website, it will include a migration plan to ensure all the links pointing at pages on your old site still work and that you don’t lose any organic search traffic in the changeover.

Performance Metrics

This is where tools like Google Analytics and Google Search Console come in so that you can measure search traffic, collect information about how people are interacting with your site, figure out conversion rates and all that good stuff.

Post-Launch Follow-Up

This takes place in the days and weeks post-launch to ensure your new website is performing as expected.

A Guide to Your Website

Because what good is a shiny new website if you can’t make heads or tails of it?

""

That’s a lot to keep track of! The good news is, if you hire the right agency, all of this will be documented in a detailed plan, and you’ll have regular check-ins to measure progress. In addition, they will help you identify the appropriate next steps to make sure your business can continue to build on your new digital foundation.

But let’s say you’re still leaning toward a DIY solution or a freelance web developer. These are valid options, though they do come with some risks. If you do choose to go that route, here are some considerations.

Platform

  • Is the platform you choose (such as Squarespace or Wix) easy for you to use?
  • If you’re going with a freelancer, is their preferred platform (ex: a content management system like WordPress, Drupal, or Joomla) friendly to non-developers?
  • Or does the freelancer use a CMS at all (ex: the website can only be updated by accessing the server and site files)?

Ease of Use

  • At the end of the process, can you update the website yourself (ex: add pages, update text, post pictures or PDFs)?
  • Or has the website been constructed with the assumption that the developer will be on retainer for routine updates?

Migration

  • If you’re redeveloping your site, do you know how to set up redirects and prevent dead links so you don’t lose organic search traffic?
  • Does the freelancer you’ve chosen?

Content

  • Are you, or do you have on staff, a person who is comfortable writing and is knowledgeable about what your base is looking for when they come to you?
  • If you’re going with a freelancer, how are their writing skills?
  • Are you confident they will ask the right questions about your audience to target them effectively?

Design

  • Platforms like Squarespace or Wix use templates, which means websites built with them will all look similar. Is that a drawback for you?
  • If you’re going with a freelancer, do they have a diverse design portfolio? Or when you look at their previous clients, do their websites all look alike?

Mobile

  • How does the Squarespace or Wix template you’re considering look on a mobile phone or tablet? Is it still easy to use?
  • How about the websites in a freelancer’s portfolio?

User Experience (UX)

  • Do you know how to make a website easy to use for your clients?
  • When you explore websites built by a freelancer, how easy do you find their websites to navigate?
  • Do those websites anticipate questions you have about the business and put the answers front and centre?

Metrics

  • How do you plan on measuring how successful your website is?
  • Are you comfortable setting up tools like Google Analytics or Google Tag Manager so you can collect performance data and adjust accordingly?
  • Is the freelancer you choose comfortable with them?
  • If someone else is setting up these resources for you, will you own the accounts or will they?
  • If you need help interpreting what these tools are telling you, where can you go?

Living in an age where anybody can create a website is great (and let’s be honest, pretty empowering), but if your new website doesn’t create the right experience for your audience, it can be worse than not having a website at all.

Before you start throwing all your time and resources into a website, think about your goals. Equally importantly, think about whether or not you have what you need to create a site that will help you achieve those goals. Websites are one of those things that can be more expensive to fix than they would have been to do right in the first place. Why take that chance? Contact us.

The post So You Need a (New) Website appeared first on Full Stacks.

]]>
https://fullstacks.pro/so-you-need-a-new-website/feed/ 0
Migrating Posts from Craft CMS to WordPress https://fullstacks.pro/migrating-posts-from-craft-cms-to-wordpress/ https://fullstacks.pro/migrating-posts-from-craft-cms-to-wordpress/#respond Mon, 13 Feb 2017 00:00:00 +0000 https://fullstacks.pro/migrating-posts-from-craft-cms-to-wordpress/ Without ripping through your entire budget.

The post Migrating Posts from Craft CMS to WordPress appeared first on Full Stacks.

]]>

Content migration burns hours that could be used for design and development. This is especially true if you’re migrating from one platform to another or from a static site to a dynamic one.

(We’re seeing less and less of the latter as the Internet moves toward content management systems.) We helped migrate 60+ blog posts from a Craft CMS to WordPress for the Edmonton Community Foundation in under two hours and this is how we did it!

In our case, we only needed to transfer over certain content pieces that fell under a particular category. This ruled out a straight migration using existing tools. (Who wants to transfer everything only to end up deleting what you don’t need?) We had a copy of the database and could have written a script that would extract what we needed from it; but we weren’t familiar with the entity relationships for Craft CMS and after an initial assessment it seemed like more work than necessary for what we wanted to do.

What We Did

The process was straight-forward:

  1. Get a list of URLs we need to import
  2. Alter Commander Vee to be specific to our project
  3. Write a supplemental script to scrape the database for missing information
  4. Add importing featured images to the Commander Vee import script
  5. Run the import script
  6. Test the results

Get a list of URLs to import

We ran the Screaming Frog SEO Spider Tool on the existing site to get all of the site URLs. We’d need them for redirects, anyways, so this was already part of our process. For the post import, we only needed certain content pieces that fell under a particular category and, thankfully, those pieces were easy to parse out based on the URL structure. As you can see below, we needed content pieces that fell under ‘/about/features/’.

A excel column lists URLs from a Screaming Frog crawl

Results of a Screaming Frog Spider

Commander Vee Setup

Commander Vee is example code that shows how someone might scrape content and insert it into a WordPress database. Commander Vee is not a polished plug-and-play script but it certainly did help as a launching off point for our data migration!

We set up Commander Vee on a local web server so we could execute PHP files. We used MAMP Pro, but it doesn’t matter what you use to spin up a server. Our local URL was http://cvee.dev.

Target URL File

Copy and paste the URLs you would like to scrape into a text file in ‘commandervee-master/target-urls.txt’; one URL per line. We named our file ‘target-urls.txt’ but you can name yours anything you like. Just make sure you reference the correct file name in the next step.

14 Target URLs listed in purple in a Text File

Target URLs in a Text File

If you are on a Mac, open your terminal and navigate to the ‘commander-vee’ directory. Run this command:

wget -i target-urls.txt –adjust-extension -P html
Note: If you have never used wget on your computer before you will have to install it. There are plenty of resources out there on how to do so. Because our developers are on Macs we used Homebrew to install Wget.

You should see something like this in terminal:

Terminal command line screen

This is what you should see in the terminal

This command goes to each URL in your target-urls.txt file, gets the HTML for the page and writes it to a file, puts a .html extension on it, and then dumps it in a folder called html.

A finder folder called HTML has 13 html files inside.

The html folder

Crawler

Open up ‘/commandervee-master/crawler.php’ and adjust the variable $filedir to reflect your directory; if you used the terminal command above, exactly as written, the variable value would be ‘html’.

Colourful code. Line 12 is highlighted and says $filedr = 'html';

Now open crawler.js and scroll down to the EXTRACTION FUNCTIONS section.

Code showing extraction functions - craft cms

Extraction functions

This is where you’ll have a bit of work to do! These extraction functions will help populate the JSON array that you’ll be using to import data into WordPress. You’ll have to inspect the source of the URLs you’re importing and find what elements/classes/IDs will help you to target the title, author, author slug, publish date, featured image, and content.

The crawler.php file, together with crawler.js, will go through every *.html file in your ‘html’ folder and use Javascript to pull data from the scraped content into a JSON array which will be called json.txt. You can change the name of your json.txt file by editing json-to-file.php on line 5.

Now, you can run crawler.php in the browser! In our case, that url was: http://cvee.dev/crawler.php. You’ll see a flash of content for each *.html file on the screen and when it is finished running, the screen will stop on the last file crawled.

We highly recommend running a test with only a few files to make sure you’ve adjusted the code correctly before you try running the crawler script on a directory with hundreds of files. It took us a couple of tries before we had it outputting what we needed. If you do have hundreds of files, look at splitting them up into smaller groups and making the json.txt file name dynamic so you end up with several smaller JSON files rather than one monster file.

If everything worked, you will have a json.txt file with a malformed JSON array.

Example of JSON code

Malformed JSON array

To correctly form this JSON array, you’ll need to add curly braces around the entire array and remove the last trailing comma. There are online services that will help you test to ensure your JSON array is formed correctly. We used http://www.jsoneditoronline.org/ for testing.

Supplemental Script

When using the crawler.js extraction functions you may find that you don’t have all of the information you need available on a rendered page! Don’t panic.

In our case, the publish date and author slug were not available on the rendered pages so we had to write a supplemental script.

Our supplemental script went through a locally hosted copy of the existing database and pulled out the information that was not available from the content scraping. The script then looped through the generated JSON array and used select statements that matched the page slug in the array with a row in the database, and then used that to add the missing information to the JSON array. Once it was complete, the script then output the altered JSON array to a new file, with the date included in the file name.

Importing Posts Into WordPress

Now that you have a JSON array with the data that you want to import into WordPress you can get down to business and start editing the custom-post-importer.php file.

JSON File Path

Your first order of business is to adjust the path of the $blog_pages variable to point to your *.json file. We placed ours in the same directory as the file. We also didn’t require the $indepth_page or the $tanker_pages sections so we commented them out.

JSON file path

Update_Post_Meta

We wanted to insert Yoast meta descriptions and a custom field we had created for guest author bylines, so after a post is inserted we added a couple of update_post_meta() calls.

HTML code for Yoast

Yoast information

Featured Image

Commander Vee in the Git repository doesn’t have the code for loading a featured image, so we took a stab at it and this bit of code worked for us. This is just meant to be an example of how you could insert a featured image, but it’s not optimized to work in all situations.

HTML code written out in colour lines of text

Featured image example

Final Step

You’re almost there!

Next up, you move the custom-post-importer.php and your *.json file into your WordPress theme. We did this on a local installation, not on a remote server. Once your files are in place, go to the URL of custom-post-importer.php in your browser. We ran ours using Chrome. For example:
http://site.dev/wp-content/themes/theme_name/custom-post-importer.php
Check your PHP error logs to make sure there were no errors and then head over to your WordPress administration area to see if your posts imported!

We highly recommend trying the process out with only a few posts to make sure your code is working correctly before you commit to importing all of your posts. It’s a lot easier to strip two or three posts from your WordPress installation than hundreds.

What We Would Do Next Time

The one thing we could have done that we didn’t do this time around is to comb the content of blog posts for <img> tags, extract those, import the images into the WordPress media library, and then alter the path of the images.

You can probably see all sorts of things you’d like to do different! Every project is unique and the great thing about Commander Vee is that it provides you with a strong starting point for a variety of situations.

Conclusion

It took us a couple of hours to set this up, but for 60+ blog posts, that’s still less time than it would have taken to copy and paste them from Craft to WordPress! We will definitely be using this setup again in the future.

The post Migrating Posts from Craft CMS to WordPress appeared first on Full Stacks.

]]>
https://fullstacks.pro/migrating-posts-from-craft-cms-to-wordpress/feed/ 0
How to Take a Decent Head Shot Using Your Phone https://fullstacks.pro/how-to-take-a-decent-head-shot-using-your-phone/ https://fullstacks.pro/how-to-take-a-decent-head-shot-using-your-phone/#respond Tue, 01 Sep 2015 00:00:00 +0000 https://fullstacks.pro/how-to-take-a-decent-head-shot-using-your-phone/ Because sometimes, you gotta work with what you've got.

The post How to Take a Decent Head Shot Using Your Phone appeared first on Full Stacks.

]]>

In a perfect world, your brother/sister/mother/child would be a professional photographer who owed you a favour. You’d have them take beautiful head shots of you and your employees for FREE, which you’d then toss on your recently redesigned website for the world to see.

Alas, we live in an imperfect world.

But do not fret! This doesn’t mean you have to settle for crappy head shots on your website. Budget and time constraints often lead our smaller clients to taking a DIY approach to head shots for their websites, and you know what? That’s ok. While we encourage everyone to seek out a professional photographer to take brilliant portraits of their team, we understand that sometimes you just need to get images of your staff on your website as quickly as possible. And sometimes, the only decent camera you have kicking around is the one nestled inside your trusty iPhone (or Galaxy Note, if you swing that way).

We’ve compiled a few handy tips on how to take a decent head shot with your phone — follow these and you will end up with A++ images you’ll be proud to use to grow your business.

Have someone else take your photo

Although there are plenty of people on Instagram who have mastered the “art of the selfie”, we suggest having a friend or colleague take your headshot — the result is much more professional. (Plus, the front-facing camera on your phone takes lower resolution images.)

Use a neutral background

Choosing a neutral background — a plain or brick wall, a fence, even some simple greenery — will keep the focus on you. Watch out for objects in the background that might end up looking like they’re sticking out of your head.

Use even lighting

Probably the most important tip we can give you! If you’re outdoors, find a nice shaded spot to have your photo taken. Being photographed in direct sunlight creates bright highlights and heavy shadows on a person’s face, which isn’t very flattering. Overcast days are the best for shooting outdoors, because the light is very even. If your photo has to be taken indoors, try to find a spot that is lit with natural lighting (from a window).

Jen Salamandick posing, one incorrect and the other correctly.

Stand out!

Wear clothing that contrasts with your chosen background — no one wants to blend in with a grey wall! To look natural, wear the kind of outfit that you would normally wear to work. Dressing up in a tux is not necessary.

Pick a style and stick to it

Brand consistency is important — and the same is true for your headshots. Pick a style and stick to it! Don’t worry, this doesn’t mean making everyone stand in the exact same pose wearing the exact same thing, unless maybe your small business is a summer camp. Making little things consistent is important, such as using the same (or similar type of) background and shooting everyone at the same time of day (to match lighting). By doing this, you ensure each of your team members’ images look like they came from the same place.

VOGUE. (Just kidding — strike a casual pose.)

Try and stand in a way that is relaxed, with your body angled slightly away from the camera. Fold your arms, have your hands on your hips, or put your hands in your pockets — whatever feels most natural. Remember to keep your shoulders back and your chin up.

Hold your phone steady

Make sure the photographer keeps the phone as still as they can by using both hands, and keeping their elbows tucked into their sides for support. (Breath normally — don’t let the pressure of being a photographer cause you to hyperventilate.)

Use HDR mode

HDR is a mode of shooting that combines several exposures to create a single picture with more detail and a greater range of tones and colours. If your phone’s camera has it available, please use it.

""

Lock the auto-focus

Tap (or hold, depending on your phone) the screen where you want the camera to focus — the face — to lock the focus and keep the image sharp.

Give your head some space

Remember to leave space around your head and shoulders — the image can always be cropped tighter later if necessary. Don’t worry about including the lower torso and legs — this is a headshot, after all!

Don’t use digital zoom

Digital zoom lowers the resolution (and therefore quality) of an image. Have the person taking your photo step closer to you instead.

Shoot away!

The beauty of digital cameras (including phone cameras) is that you can take as many pictures as you want until you get the right one. Don’t be afraid to take a few — you can always delete (or meme) the ones that don’t work out!

That’s all there is to it! We wish you the best of luck with your DIY head shots. When you’re ready to get some professional portraits taken, get in touch — we can recommend some awesome photographers.

The post How to Take a Decent Head Shot Using Your Phone appeared first on Full Stacks.

]]>
https://fullstacks.pro/how-to-take-a-decent-head-shot-using-your-phone/feed/ 0
Yellow Pages Has A Bad Case of FUD https://fullstacks.pro/yellow-pages-has-a-bad-case-of-fud/ Thu, 10 Jun 2010 00:00:00 +0000 https://fullstacks.pro/yellow-pages-has-a-bad-case-of-fud/ We've all been victims of FUD - fear, uncertainty, and doubt. It's a shady tactic and one that we hope most people see through.

The post Yellow Pages Has A Bad Case of FUD appeared first on Full Stacks.

]]>

We’ve all been victims of FUD — fear, uncertainty, and doubt. It’s a shady tactic and one that we hope most people see through. This post was originally published in 2010. It’s now a whopping nine 14 years later and we still get a handful of emails each month from people who feel they were scammed by Yellow Pages.

Often, those people are asking for us to put them in touch with other people who have commented on this post so they can try to get a lawsuit going.

In addition to selling services that appear to be basically useless because they are expensive and provide little to zero value in terms of ROI, Yellow Pages now gets the people they call into verbally agreeing to contracts without those people necessarily realizing it. For those who do sign a formal contract, an auto-renew clause is buried in the terms and conditions.

We hear from people who are shocked when they receive bills from Yellow Pages for hundreds or thousands of dollars, and when they call the YP customer service line (if they’re even able to get through), they are told there is nothing to be done because they said yes during a phone call with their rep or signed a contract at some point.

They’re even being charged through bills from their phone companies (like Telus and Bell). According to the pattern of complaints outlined by the Better Business Bureau, people are also complaining about auto-renewals happening after a cancellation has been sent.

Overall, it’s an absolute dumpster fire.

Shady business practices aside, we don’t see any logical reason to get involved with Yellow Pages beyond the free basic listing. No matter how small your business is, it’s too big to spend your hard earned dollars advertising with them when there are better options.

Even if you can’t afford to work with us, get in touch and we’ll make sure you get set up with someone trustworthy who can help you grow your business.

What lies do Yellow Pages reps tell?

Nine years ago, Yellow Pages reps were still trying to talk people into print ads—for the past several years they’ve switched to pushing them towards what we view as terrible online advertising options and even more terrible Yellow Pages websites.

The Yellow Pages reps continue to tell people the same old BS stories, but they’re getting more insistent as they become more and more desperate. Their FUD runs along these lines:

1. We are the only authorized Google Ads reseller in Canada.

There are two parts to this. First, it implies that being a Google Ads reseller is better than a Google Ads Partner. That’s absolutely not true. You do not receive better rates by working with a reseller — if anything, it costs more and they provide you with less reporting. Secondly, they are not the only authorized Google Ads reseller in Canada.

2. Having a paid listing on the Yellow Pages will improve your rank on Google.

No, not true. But a lie the reps seem to tell a lot, based on what we hear. Check out a Yellow Pages listing. You’ll see that the link to the website is actually something like http://www.yellowpages.ca/gourl/http://www.yourcompany.com— that means that the link actually is a redirect from the Yellow Pages site, not a true link to your site. It may pass along some link value, but it’s of very low quality.

Having a free listing provides you with a small boost for local SEO, but the paid packages at Yellow Pages won’t impact your visibility on Google.

3. The Yellow Pages website gets more traffic than Google!

Absolutely not. The below chart of monthly visitors in Canada will paint the real picture. This data is provided by Amazon’s Alexa Internet, a well-regarded provider of competitive website statistics.

A chart comparing visits to the yellowpages.ca and google.com - there are significantly more visits to Google.com

4. We have special ways of making your site show up on Google — no one else can do that.

They’re talking about pay-per-click advertising here. They’re just using the local business options available to any Google Ads advertiser. Nothing secret there, just knowing what boxes to click.

And the worst one of all…

5. If you cancel your ad with us, your ranking will go down on Google.

An absolute lie. Ask them for proof — how will this happen? Ask for specific examples. In our experience, we have not seen any detrimental ranking effects when a client has canceled or downgraded their Yellow Pages listing. If anything, they can improve their reach because of the money they saved and reallocated on better advertising options!

We discussed this issue on Twitter back in 2010, and if the folks at Yellow Pages even noticed, they never said anything. If Yellow Pages was as web-savvy as they claim, they would have picked up on the Twitter mentions by now and gotten in touch.

How to cancel your Yellow Pages subscription

Updated 2019:

1) Check your contract

We were able to get our hands on a recent Yellow Pages contract, and the terms and conditions mirrored the comments we’ve received here. They put in an auto-renew clause that states that you need to give 3 months notice before your annual contract ends.

2) Call this number: 1-877-909-9356

In many of the comments we’ve received, people have struggled with actually getting a hold of someone to submit their cancellation.

Thanks to Mel for sharing this phone number where she had some success.

3) File a complaint with the Better Business Bureau

If you’re being charged for something you never agreed to, can’t get in touch with anyone at Yellow Pages in order to cancel, or are being hounded by credit collectors, file a complaint with the Better Business Bureau. It looks like Yellow Pages is actually responding to most of these complaints, but it’s not clear if they’re truly rectifying each issue.

Help stop Yellow Pages

Frustrated by the FUD business practices of Yellow Pages? Here are some suggestions we’ve received from users on how you can draw attention to their tactics:

Updated May 16, 2019.

The post Yellow Pages Has A Bad Case of FUD appeared first on Full Stacks.

]]>