Browse Definitions :

yak shaving

What is yak shaving?

Yak shaving is programming lingo for the seemingly endless series of small tasks that have to be completed before the next step in a project can move forward. The term is a great example of internet slang making its way into the collective consciousness and being used to describe impediments to coding.

The term was coined by Carlin J. Vieri, a Ph.D. student at Massachusetts Institute of Technology in the 1990s, and was inspired by an episode of the Nickelodeon channel's cartoon The Ren & Stimpy Show. In the episode, Ren informs the viewers of an upcoming holiday called Yak Shaving Day, where one must leave shaving cream and a razor on the bathroom sink so that, at night, the Shaven Yak can come and leave presents.

Of course, Vieri was being sarcastic, but the term yak shaving caught on. It refers to engaging in a meaningless task that has no obvious relationship to what's supposed to be worked on but may be necessary to troubleshoot a larger problem. The process of making a simple task unnecessarily complicated may also qualify as yak shaving.

A yak is a domesticated, horned, cowlike mammal native to Tibet that looks similar to a Texas longhorn cow -- albeit with shorter horns -- but with a thick, shaggy coat to help cope with the cold climate of Tibet.

Examples of yak shaving

Examples of yak shaving fall into two categories: procrastination and necessary annoyance. In the case of the former, it's easy to slip into while working from home, where temptations and distractions abound.

For example, procrastination is when there's a report due today, but it seems dull and a waste of time because no one will ever read it. So, it falls to the end of the priority list behind other household chores -- anything to avoid writing the report.

Necessary annoyance occurs when the original goal is to complete task A, but an unforeseen cascade of circumstances intervenes to distract from completing it. Those involved with software development may be especially sensitive to necessary annoyances. For example, a field entry name must be changed in source code because it was changed in the database. But, as the software engineer looks into the code, other errors become apparent and need to be corrected. The required changes affect other apps, and then those, in turn, affect yet more applications. That can lead a developer down a rabbit hole of dependency hell that needs to be fixed before making the initial modifications.

How to avoid yak shaving

Avoiding both types of yak shaving requires self-discipline and self-awareness. In the case of procrastination, it comes down to recognizing it, stopping the time-wasting exercises and getting on with the unpalatable task at hand.

Steps to avoid yak shaving
Follow these steps to avoid falling down a rabbit hole.

In the case of distraction, stopping isn't an option because these are necessary steps. Even if a half-dozen other updates occur before making a planned change, they must be done.

It is possible to reduce the distracting effects of yak shaving by reframing the situation. Here are some steps to consider:

  1. Realize you have been sidetracked. The moment you realize you are moving toward yak shaving, stop.
  2. Understand the task at hand. You can't get back on track until you realize what the track is. Refocus to become aware of possible distractions.
  3. Have a plan of action. Once you've recognized you are off course, formulate a project plan to get back on course.
  4. Set modest goals. A series of small tasks is easier to accomplish than one giant task.
  5. Set periodic checkpoints. Stop periodically to ensure you are still on the planned path.
  6. Have a better working environment. This is ideal advice for avoiding procrastination: Reduce as many distractions and temptations as possible.

One method for setting periodic checkpoints is the Pomodoro Technique, which breaks work into 25-minute chunks punctuated by five-minute breaks.

Fostering well-being is essential to productivity. These 10 digital wellness tips help workers stay on task and improve work experience.

This was last updated in January 2023

Continue Reading About yak shaving

  • SD-WAN security

    SD-WAN security refers to the practices, protocols and technologies protecting data and resources transmitted across ...

  • net neutrality

    Net neutrality is the concept of an open, equal internet for everyone, regardless of content consumed or the device, application ...

  • network scanning

    Network scanning is a procedure for identifying active devices on a network by employing a feature or features in the network ...

  • virtual firewall

    A virtual firewall is a firewall device or service that provides network traffic filtering and monitoring for virtual machines (...

  • cloud penetration testing

    Cloud penetration testing is a tactic an organization uses to assess its cloud security effectiveness by attempting to evade its ...

  • cloud workload protection platform (CWPP)

    A cloud workload protection platform (CWPP) is a security tool designed to protect workloads that run on premises, in the cloud ...

  • Regulation SCI (Regulation Systems Compliance and Integrity)

    Regulation SCI (Regulation Systems Compliance and Integrity) is a set of rules adopted by the U.S. Securities and Exchange ...

  • strategic management

    Strategic management is the ongoing planning, monitoring, analysis and assessment of all necessities an organization needs to ...

  • IT budget

    IT budget is the amount of money spent on an organization's information technology systems and services. It includes compensation...

  • ADP Mobile Solutions

    ADP Mobile Solutions is a self-service mobile app that enables employees to access work records such as pay, schedules, timecards...

  • director of employee engagement

    Director of employee engagement is one of the job titles for a human resources (HR) manager who is responsible for an ...

  • digital HR

    Digital HR is the digital transformation of HR services and processes through the use of social, mobile, analytics and cloud (...

Customer Experience
  • chatbot

    A chatbot is a software or computer program that simulates human conversation or "chatter" through text or voice interactions.

  • martech (marketing technology)

    Martech (marketing technology) refers to the integration of software tools, platforms, and applications designed to streamline ...

  • transactional marketing

    Transactional marketing is a business strategy that focuses on single, point-of-sale transactions.