WorstPlans.com updates every Monday!

Your weekly source for terrible plans and ideas!

Category: Computers

Do any programmers work at your company? Give them the ultimate retirement gift—save all code contributions (e.g. `git` commits) and have them published as a leather bound book!


Occasionally, people get a gift or memento from a company after working there for a certain period of time, or, sometimes, when their jobs are outsourced to a much cheaper country and everyone is fired.


For programmers, what better way to commemorate their contributions to a company than a log of all their code contributions?

Specifically, the proposal is to collate all of the log messages into a giant bookshelf-worthy tome.

Here, I’m using git as an example (Figure 1), but any version control system with annotation could work (e.g. user comments in Microsoft Word’s “Track Changes”).


Fig. 1: Each time user “jsmith44” changed code in a codebase, a line like the ones above was generated. The comments in red are what we’ll be including in the published book. Note that only comments are included—not the actual source code.

All of a user’s contributions to a codebase can be collected by running a simple command (e.g. git publish_book –user=jsmith44 –start 2014 –end 2018). This would generate the raw PDF / ePub / Microsoft Word document that would then be sent off to a print-on-demand printing company to generate a physical book (Figure 2).


Fig. 2: After the code contributions in Figure 1 are printed out, we would end up with a book like this one. For users with particularly extensive “commit” messages, a multi-volume series could be generated.


PROS: Makes for a great retirement gift!

CONS: Reading it could cause existential dread, especially if the code was contributed toward an ultimately-failed project.

Use your sense of SMELL to diagnose computer errors: the new “smell checker” spell checker is a revolution in error notification!


In programming, there is the notion of “code smell”—a subtle indication that something is terribly wrong in a piece of source code, but without any (obvious) actual mistake.

For example, if you saw the following:


instead of


that would be a good indication that something extremely bizarre was going on in a codebase.

The issue:

Unfortunately, in order to notice “code smell,” a person must actively review the source code in question.


But what if code smell could ACTUALLY generate a strange or horrible smell (Figure 1)? Then a person wouldn’t have to actively look for problems—the horrible smell of rotting meat would indicate that there was a problem in the codebase.

This smell-based notification method wouldn’t need to be restricted to programming errors, either: spell checking notifications, software updates, and other information could all be conveyed by smell.



Fig. 1: This bizarrely-formatted source code might cause the laptop to emit a boiled-cabbage smell.


  • A computer could have an incense-burner-like attachment that would allow it to emit various smells.
  • For example, a spellchecking warning could emit the smell of recently-touched copper coins (Figure 2), while “you have 100 unread emails” could emit the smell of curdled milk.
  • This would allow a user to know what items require attention on their computer without even having to turn on the screen!
  • This smell-dispensing attachment could be refilled just like printer ink, making it extremely eco-friendly.

Fig. 2: Different warnings and errors could have different smells of various degrees of noticeability and/or unpleasantness. Here, the user might know that they have both a spelling error AND a grammar error by the mix of the spelling-smell (dog that has spent one hour in the rain) and grammar-smell (recently-touched pennies).

PROS: Allows computer errors to be conveyed without requiring the user to actively look at a screen.

CONS: People get used to strange smells fairly quickly, so these smell-based warnings would need to be addressed quickly, before the user adjusted to the smell and stopped noticing it.

Throw away your laptop privacy screen and use this camera-plus-software approach for the ultimate in security!


Laptop privacy screens (or “monitor filters”) reduce the viewing angle of a laptop screen in order to prevent evildoers from snooping on sensitive information on your laptop (Figure 1).


Fig. 1: Since this laptop does NOT have a privacy screen on it, the suspicious individual at left is able to view this contents of the laptop (despite being at an extreme off-center angle).

The issue:

Unfortunately, these privacy screens have a few downsides:

  1. They are inelegant to attach. Often, the attachment points block a small amount of screen real-estate.
  2. They slightly darken the screen even when viewed directly head-on
  3. When collaborating with coworkers, removing and replacing the screen is time-consuming.


A high-speed camera could, in combination with facial recognition and eye-tracking software, be used to determine who is looking at the screen and exactly what part of the screen they are looking at.

Then, the privacy system simply scrambles the contents of your laptop screen as soon as it notices an unauthorized individual looking at your screen (Figure 2). (When you are the only viewer, the eye tracking camera can recognize you and not scramble the screen.)



Fig. 2: With the camera-based privacy filtering system, the laptop instantly scrambles the screen as soon as it detects that someone besides the laptop owner is looking at the screen. Note that the contents of the laptop look similar at a glance, but are actually scrambled nonsense. This prevents passers-by from immediately realizing that a software privacy filter has been applied (and potentially attracting unwanted attention).

In an extra-fancy system, the scrambling mode could be operational at all times, with the laptop only unscrambling the very specific part of the screen that the user is looking at (Figure 3). This is similar to the idea of foveated rendering, where additional computational resources are directed toward the part of the screen that the user is actually looking at.


Fig. 3: It might be possible to selectively unscramble only the part of the screen that the user is actively looking at. The region in the user’s peripheral vision would remain scrambled.


If you own a laptop manufacturing company and are looking for an endless hardware task to employ your cousin or something, this would be a great project!

PROS: The laws of physics do not prevent this from working!

CONS: Might be impossible to use a laptop in a coffeeshop with this system activated.

Finally, a revolution in user interfaces: move BEYOND the keyboard for numeric input! You can easily type numbers on your phone using this one never-before-seen UI / UX paradigm. Free yourself from the tyranny of the keyboard!

When using a computer, phone, or tablet, it is occasionally the case that a user must type in numbers.

Typing numbers on a computer with a 12-digit physical numeric keypad is fast and easy (Figure 1). Unfortunately, laptops frequently no longer have these hardware keypads, and smartphones and tablets never did.

The issue:

The “soft” keypad on most phones provides no tactile feedback and is often a completely separate part of the onscreen keyboard interface (i.e. you may end up in a completely different “numeric input” mode instead of the standard alphabetical layout you are familiar with).

This may lead to the user inputting incorrect numbers or, at minimum, taking longer than is necessary to input their data.



Fig. 1: The numeric keypad (A.K.A. “numpad”) shown on this smartphone is not easy to interact with. It would be easy to input the wrong number and have your pizza delivered to the wrong house (or some similar calamity).


Fortunately, modern smartphones and tablets have a number of additional sensors that we can repurpose for fast and unambiguous numeric input.

Below: see Proposal T (“Tilt sensor”) in Figure 2 and Proposal M (“Magnetic compass”) in Figure 3.





Fig. 2: Proposal T (“Tilt sensor”): in order to input a number, the user simply tilts their phone to a specific angle and holds it there for, say, one second. The value entered is the number of degrees the user tilted the phone (from –90º to +90º). For single-digit inputs, we could make the process simpler and map the range from –45º to +45º to 0 to 9, as shown above.



Fig. 3: Proposal M (“Magnetic compass”): here, the phone’s magnetic compass is used in order to determine the user’s compass orientation (a number between 0 and 359). The user simply physically rotates themselves (and their phone) to point in the direction of the desired numeric input. In the example above, we have divided the orientation value by 10 in order to reduce the degree of precision demanded from the user (as shown on the left side, an orientation of 270º results in the input “27,” as would 271º, 272º, etc…).

Additional Input Methods:

There are alternative input methods that may also be useful for numeric input. For example, to input the number N, the user could:

  1. Raise their phone N inches into the air
  2. Quickly cover up their phone’s camera N times
  3. Shriek at their phone at (50 + 5*N) decibels. This would be faster than relying on normal voice input, since it would not require complicated machine learning techniques to process.

There may be additional yet-undiscovered methods as well!

PROS: Frees users from the technological dead-end of the hardware keyboard. Finally, innovation in the user input space!

CONS: None.

Re-visit the past with a new “old monitor nostalgia” mode for your expensive high-resolution television or computer display!

The issue:

Modern computers (and TVs) have large, high-resolution screens.

But sometimes people have nostalgia for the past—perhaps yearning for Cold War-era computing, when the harsh glow of a 9-inch CRT monitor represented the pinnacle of technology (Figure 1).


Fig. 1: This 1984 black-and-white Macintosh cost approximately $5500 in 2019 dollars, which will buy approximately 10 economy-priced laptops in the year 2019.


Modern monitors should have an option to emulate the behavior of various old display types.

For example, a high-resolution monitor could easily pretend to be the following:

  • A 1950s tube television
  • The tiny black-and-white screen of the 1984 Macintosh (Figure 2)
  • The monochromatic green display of the Apple //  (Figure 3)



Fig. 2: In “Mac ’84 mode,” only a tiny fraction of the screen is used (left), in order to give the user that authentic 9-inch-screen experience. (The blue area represents an unusable border region.)



Fig. 3: Apple // mode. After a while, you actually stop noticing that the whole display is green!


Now that a “Dark Mode” theme has been implemented by nearly every operating system vendor, the next arms race is sure to be “retro display mode” or “retro CRT filter” mode.

PROS: Gives people a greater appreciation of modern technology.

CONS: May cause eyestrain.



Supplemental Fig. S1: The actual number of pixels on a 2018 27″ iMac is 5120×2880 (14,745,600), as compared to 512×342 (175,104) on the original Mac. That’s 84.2 times more pixels, or 252 times more pixels if you count the R, G, B channels separately!

Don’t let a modern user interface coddle you with easy-to-identify-buttons—demand a confusing and unlabeled mystery zone of wonders!


It is often recommended that pet owners buy “challenging” toys to keep their pets mentally stimulated in a world where the owners take care of all the pet’s needs.

Although an owner could simply put a dog biscuit in a bowl, it would be more exciting for the dog if the biscuit were inside a difficult-to-open ball that required the dog to work to figure it out.

The issue:

Similarly, modern automation has removed many elements of daily life that were once mentally challenging. For example, turn-by-turn directions make it theoretically possible for a person to go through life without ever learning how to read a map.

Proposed idea, which has already been implemented:

A long time ago, any user interface elements on a computer were clearly marked: a button would have a thick border around it, a link would be underlined in blue, etc.

Unfortunately, this sort of coddling may cause the human species to become helpless and incapable.

What is needed is an unforgiving type of interface that does not clearly label elements that accept user input: this will force humans to become better at remembering things.

A case study is available in Figure 1. Can you figure out what is, and is not, an interactable UI element?

Android Guess The Button 1.png

Fig. 1: In order to prevent the user’s brain from atrophying due to lack of use, Google has developed a settings screen for Android that has no visual indication of what is and is not a button. Try puzzling through it yourself: can you guess what tapping on each element would do? Answers in Figure 2. This screenshot is from Android 9, but the situation is identical in Android 10 (2019).


Android Guess The Button 2_answers.png

Fig. 2: Answers: BLUE is a normal app button and GREEN is a user-interface-related button. The two red rectangles indicate “buttons” that highlight when clicked, but do nothing otherwise (it is theoretically possible that they do something on other phones).

Google shouldn’t get all there credit here, though: the idea of making a complex swiping-puzzle-based interface was arguably pioneered by Apple. If you don’t believe it, find someone with an iPad and ask them to activate the multiple-apps-on-the-same-screen mode: you’ll be amazed by the quality and difficulty of this puzzle!


With the addition of unlabeled user interface elements and a huge array of “swipe” gestures, modern phones—both iPhones and Android phones—are adding a new category of exciting brain-challenging puzzles to everyday life.

PROS: It is theoretically possible that a user who plays these memory games with their phone will become better at crucial memorization and concentration-based tasks (although there is zero evidence of this, but it seems intuitively appealing, which is good enough here).

CONS: None!

Check your server logs for incredible deals, thanks to this new system for putting advertisements everywhere!


Some widely-used computer programs are free, and are supported exclusively as hobby projects by unpaid developers.

The issue:

Unfortunately, there is no financial mechanism to encourage further development and enhancement of these programs. Even if a hundred million people depend on a program, there is no simple way for them to support the developer.

It would be possible for software developers to figure out some sort of monetization scheme, but this requires a different skillset from software development. Plus, many programmers aren’t interested in also dealing with marketing.


Nearly all programs—both on servers and on regular desktop machines—write messages to a system log somewhere on the computer.

Developers of these un-monetized free utilities could sell out ad space in the logs: instead of a program just writing important data to the log (“USB hard drive failed to respond” or “bluetooth device unexpected disconnected”), the program could also pollute the log files with various advertisements (see Figure 1).


Fig. 1: You might say that polluting the server logs with ads was unethical, but wouldn’t it be MORE unethical to block these ads, thus robbing the content creators of their revenue?


While this is, in many ways, essentially the same idea as having ads in terminal commands (as described earlier), having ads in the logs means that they will be picked up by any monitoring utility and have a chance of being seen even if a server is not used interactively. Plus, these ads will work on servers without graphical interfaces.

Although an “on call” employee might be annoyed to get woken up at 4:00 AM by an error message from an ad, surely they wouldn’t object to it as much as long as the ad was something beneficial, like “FATAL SYSTEM ERROR: SHRIMP PLATTERS ARE 25% OFF THIS WEEK ONLY WITH CODE [SERVERSHRIMP].”

Ethics of Blocking These Ads:

One might say, “hey, I could just run ANOTHER script to purge the logs of these ads.” But really, wouldn’t that be just as unethical as blocking ads on a web site (see Figure 2), or skipping ads on a recorded program? Yes, yes it would.


Fig. 2: Left: this is what someone sees WITHOUT an ad blocker. Right: WITH an ad blocker. Don’t steal bread from developers by blocking annoying ads—it’s your duty as a consumer to endure these ads without complaining.

PROS: Helps encourage development and refinement of formerly-free-and-unencumbered software.

CONS: The ads may consume a few additional kilobytes per day in log files.

Is a university lecture or job talk going on FAR longer than it is supposed to? Emphasize punctuality with this new incredible heat-lamp-based presentation setup!

The issue:

Sometimes, a college lecture or work presentation goes far over the allotted time (Figure 1).

Frequently, the presenter doesn’t even realize that they are over time.


One simple way to prevent a presentation from going over time would be to just have the power outlets turn off at exactly the designated end-of-presentation time.

However, this hard stop could be annoying: what we really want is something that will make the presenter inherently want to wrap up their talk.


The solution is simple: just have an array of heat lamps pointed directly at the presentation podium.

When the time limit has expired, the heat lamps turn on, one at a time. At first, the podium will be just a little warm, but it will quickly become scorching and unbearable. Thus, the presenter is encouraged to conclude their talk in a timely fashion.


Fig. 2: The heat lamps above the presenter will gradually turn on when the presentation hits its time limit.


An earlier shark-related proposal turned out to be too expensive, as it required creating a new auditorium with a raised platform above a shark tank. So this is an almost-as-effective solution for the university or business on a tight budget.

This heat lamp idea could be used in conjunction with an earlier software-only plan to “burn away” slides as they are shown. This “burning” idea would synergize well with the heat lamps, too!

PROS: Does not have the same recurring maintenance costs of the shark version of this idea in the link above.

CONS: May cause a circuit breaker to trip if the building is not wired for 6000+ watts on a single circuit.

Never be frustrated by a slow download again, thanks to this new “file download” interface that will give you a newfound appreciation of even the slowest download speed! A new and improved semi-“skeuomorphic” user interface paradigm.


Sometimes, it seems like a file is taking forever to download (or copy). A speed of 160 kilobytes per second may seem excruciatingly slow, but that’s actually an entire late-1970s floppy disk (Figure 1) per second.


Fig. 1: This is the type of floppy disk that is legitimately floppy, not the 3.5 inch “floppy disk” that is immortalized in the “save file” icon and “💾” emoji.


Instead of just showing a slowly filling up progress bar when downloading (or copying) a file, a computer should show an animation of old floppy disks flying across the screen (Fig 2).


Fig. 2: These zooming floppy disks make it clear that a LOT of data is being copied.

This will help emphasize how much data is actually being copied: potentially hundreds of floppy disks per second!

Think about how much faster a copy would seem if it were presented in this fashion, instead of as an incredibly slowly-filling-up progress bar.

Bonus second proposal:

Instead of showing just the number of floppy disks per second, the file copy could be represented as a number of monks transcribing the file onto an enormous vellum scroll.

If we assume that an efficient monk could write eight bytes (~8 characters) per second, then a 10 megabyte per second transfer speed would need to be represented as (10 * 1024 * 1024 / 8) 1.3 million monks in a row, all writing to the same file (Figure 3).


Fig. 3: Over 1.3 million monks would need to be rendered (shown here: 4) in order to accurately depict a 10 megabyte/second copy speed.

That is probably too many monks to display on a screen at once, but the screen could slowly zoom in and out of specific regions of this enormous scroll-copying effort to really give the end user an appreciation for the effort involved.

PROS: Gives an impatient computer user a newfound appreciation of how fast their data transfer really is.

CONS: Spending so much processing power on rendering images of monks copying a file might negatively impact both battery life / energy efficiency and file-copy speed.

Prism glasses will improve your posture! Never hunch over your laptop like some kind of Quasimodo again!


Since laptops are so convenient and portable, many people work in locations that are not set up for long-term ergonomic comfort (for example, dining room tables or coffeeshop counters, e.g. Figure 1).


Fig. 1: A setup like this is a common work environment, despite its presumably questionable OSHA rating.

The issue:

Since these locations were never designed for laptop use, they are typically set up in such a way that the laptop keyboard and screen are way too low, and you often see people hunching over their laptops in ridiculous fashion (Figure 2).



Fig. 2: This highly dubious pose is the common reality of laptop use in non-optimal situations, and is, additionally, an affront to the human form. People tend to blame themselves for having “bad posture,” but really it’s an inescapable element of such a work environment.

Ideally, people imagine that they would sit up straight, as shown in Figure 3. But that is incompatible with the position of the computer screen.


Fig. 3: This “ideal posture” scenario is totally unrealistic given the position of the laptop. The user will inevitably return to the situation shown in Figure 2.


Luckily, the fix is simple: a modified version of belay glasses, a type of prism glasses used in rock climbing that were allow wearers to look up without craning their necks.

Except in this case, the prism glasses will look down at the laptop screen, rather than up, as illustrated in Figure 4.




Fig. 4: These “prism glasses” (in this case, actually a giant prism attached to a hat) are  suspended in such a way that the user is able to look directly at the prism, yet see the laptop screen below. The prism would presumably not actually be purple, although technically that would be an option.


Since prism-based belaying glasses already exist (surprisingly, only commercially available after 2007!), laptop prism glasses are probably not totally infeasible.

It would also be possible to use a VR headset to set up something like this, but at that point you might as well just set up a proper work space.

PROS: Improve your posture!

CONS: The “sweet spot” for seeing the screen is probably extremely narrow, so any movement of the wearer’s head may move the laptop screen out of the user’s view. Additionally, even the slightest imperfections in the prism would probably make text very difficult to read.