The life story of “LIFO”

According to Dana Goldstein, the acronym LIFO did not come up in education discussions until May 19, 2010. In 2009, officials referred to “last in, first out” rules, but they did not use the acronym. Goldstein did some detective work to determine how and when the acronym entered education discussion. (The term “last in, first out” came up in education discussion in 2009, but people used the phrase, not the acronym.)

From what I can tell, the first American use of the LIFO acronym to refer to teacher seniority protections came on May 19, 2010 in an Education Week op-ed by Eric Hanushek, a prominent Stanford University education researcher and fellow at the free-market Hoover Institution. Hanushek introduced readers to the acronym and argued that ending LIFO would be a good way for cash-strapped states to cut costs during a recession.

I emailed Hanushek to ask him how he got the idea to apply “LIFO” to education. “I just know [the term LIFO] from accounting — and my use just picked up on the standard accounting jargon, which seemed to characterize the [teacher seniority] rules perfectly,” he wrote back. Now that teacher layoffs are a reality because of the recession, Hanushek wrote, people are paying more attention to the problem of good, young teachers losing their jobs because of seniority rules.

The New York Post used the acronym on January 25, 2011; according to Goldstein, over 300 news reports have used it since then.

Does the use of the acronym affect the discussion? It probably does. I don’t see a conspiracy in the use of the term–but, as Goldstein points out; “the acronym powerfully recalls one of the most potent critiques of teachers’ unions, that they provide incompetents with job protections for life.” It is hard not to hear “life” in “LIFO.”

In any case, it’s interesting that the acronym has such a short history in education discussion. And it’s generally good to know where terms come from, or at least to ask.


  1. When I hear LIFO, I just assume that there’s a computer person involved in the discussion.

    LIFO (and FIFO) come from Stacks and Queues. When we learned pascal in 10th grade, we learned all about LIFO and FIFO structures.

    It’s about how you organize and reassign pointers. There’s nothing nefarious at all!

    Though the fact that some in the ed-world DO find terms like LIFO and FIFO nefarious is a poignant illustration of the lack of STEM knowledge among certain segments of our society!

  2. Not sure a lack of STEM knowledge is to blame here–you won’t hear LIFO mentioned in math or science classes, and you’ll only hear it in certain computer science classes. My C++ class never mentioned it; my hefty tome on Perl doesn’t mention it. The C Programming Language by Kernighan and Ritchie doesn’t mention it. The Art of Computer Programming, vol. 1: Fundamental Algorithms by Donald E. Knuth mentions it twice: once in the chapter on information structures, and once in the “history and bibliography.”

  3. Yeah, the use of LIFO (as in a “LIFO Queue”) in programming jargon goes back 30 years that I know of. The similarity to “life” never occurred to me…

  4. Here’s what Knuth says on p. 240 of The Art of Computer Programming, vol. 1: Fundamental Algorithms, 3rd edition (Reading, Mass.: Addison-Wesley, 1997):

    “Many people who have independently realized the importance of stacks and queues have given them other names: Stacks have been called push-down lists, reversion storages, cellars, nesting stores, piles, last-in-first-out (‘LIFO’) lists, and even yo-yo lists. The terms LIFO and FIFO have been used for many years by accountants, as names of methods for pricing inventories. Still another term, ‘shelf,’ has been applied to output-restricted deques, and input-restricted deques have been called ‘scrolls’ or ‘rolls.’ This multiplicity of names is interesting in itself, since it is evidence for the importance of the concepts. The words stack and queue are gradually becoming standard terminology; of all the other words listed above, only ‘push-down list’ is still reasonably common, particularly in connection with automata theory.”

  5. Heh– must be a function of when my high school computer teachers went to college!

  6. It’s also an accounting term, used in cost accounting.

  7. The term LIFO is usually encountered in a programming class for the concept known as a ‘stack’ which has it’s roots in another concept known as ‘recursion’ (in which a function calls itself and stores it’s parameters on a stack until the end is reached, and then the items are popped off to get the final answer).

    A common method of using recursion is to compute factorials.

    Another way unions look at this concept is ‘last hired, first fired…’

    Diana, if your C++ class didn’t cover this, it must have been introductory, as most classes in C/C++ should have some contact with the following structures:

    Linked Lists, Stacks, Queues, B-Trees, Splays, and Sorting

    Any decent CS program should cover these concepts in depth during the course of the degree program (if it doesn’t, RUN, do not walk to the nearest exit).

  8. Bill,

    My class covered the concept of stacks but didn’t call it LIFO. It’s possible that most programming classes do.

  9. I recall it from programming, too. I remember pronouncing it more like the River Liffey than Life. In any case, we need both experienced and new teachers. I have good, enthusiastic new teachers in my department who have a lot of learning to do; so, it is a good thing I also have wonderful veterans who coach them and help them. Teaching is quite private. We have to work at being a team.

  10. I have heard from a horse’s mouth (a former Harvard computer science professor, well versed in the current state of things) that the term LIFO is indeed widely known among comp sci majors. So, I stand corrected.

    I say “a” rather than “the” horse’s mouth in recognition of the other horses here who have already emitted truth and wisdom from their mouths.