In an era defined by software "bloat"—where modern applications frequently balloon into hundreds of megabytes or even gigabytes for simple tasks—a striking demonstration of efficiency has emerged from an unlikely source. Dave Plummer, a former Microsoft software engineer whose legacy includes the creation of the Windows Task Manager and the original Windows Pinball, has achieved the seemingly impossible: he has recreated the classic Windows Notepad utility using just 2,686 bytes of code.
This project, documented on his YouTube channel, Dave’s Garage, serves as a poignant critique of modern software development practices. While the contemporary version of Windows Notepad has evolved into a feature-rich, albeit heavy, word processor occupying over 350 kilobytes, Plummer’s "bare-metal" version achieves the core functionality of the original in a file size roughly equivalent to a 1977 Atari 2600 game cartridge.
The Evolution of Bloat: From Utility to Word Processor
To understand the significance of Plummer’s achievement, one must first examine the trajectory of Windows Notepad. For decades, Notepad was the quintessential lightweight utility: a simple, lightning-fast tool for viewing and editing raw text. It was never intended to be a robust word processor; it was a sandbox for code snippets, configuration files, and quick notes.
However, as Microsoft integrated more features—such as enhanced font rendering, complex encoding support, improved search-and-replace, and deeper integration with the Windows UI framework—the executable size began to climb. In the context of modern computing, where hard drive capacities are measured in terabytes and RAM in gigabytes, a 350-kilobyte footprint seems trivial. Yet, to veteran engineers like Plummer, this growth represents a broader, more concerning trend in software architecture: the abandonment of code efficiency in favor of convenience and rapid development cycles.
Chronology of the Project
Plummer’s experiment did not begin as a commercial endeavor, but rather as an intellectual challenge. Having spent his career deep in the trenches of Windows development, he sought to prove that the core functionality of a graphical application is inherently small, provided the programmer relies on the operating system’s existing infrastructure.

- The Conceptual Phase: Plummer identified the core requirements of a notepad application: a text-editing window, a menu system for saving and opening files, and basic keyboard input handling.
- The Assembly Phase: Eschewing modern high-level compilers that often inject massive amounts of boilerplate code, Plummer opted to write the program in assembly language. This allowed him to interact directly with the Windows Application Programming Interface (API).
- The Compression Phase: Even with efficient code, standard executable formats include overhead. To reach his sub-4-kilobyte goal, he utilized "Crinkler," a specialized linker and compressor renowned in the "demoscene"—a community dedicated to creating high-end visual and audio experiences in extremely limited file sizes.
- The Final Polish: After iterating on the code to ensure it interfaced correctly with Windows’ native user interface calls, the final executable emerged at 2,686 bytes.
Supporting Data: Why Size Matters
The disparity between a 350-kilobyte application and a 2.6-kilobyte application is not merely a matter of disk space. It reflects two different philosophies of software engineering.
Modern software often relies on "bloated" frameworks. Developers frequently include massive libraries to handle tasks as simple as displaying a button or managing memory, simply because it is easier than writing the low-level code to perform those tasks natively. When you run a modern application, you are often loading entire layers of abstraction that the user never sees and rarely needs.
Plummer’s project demonstrates the "native API" approach. Windows itself contains the code for windows, buttons, scrollbars, and menus. By calling these functions directly, a developer avoids the need to bundle that logic within their own executable. While this approach requires a deeper understanding of the operating system’s architecture, it results in software that is remarkably lean.
The "Crinkler" Factor and Demoscene Influence
A key technical element in Plummer’s success is the use of Crinkler. In the world of the demoscene, where developers compete to create complex 3D animations and games in under 4KB or 64KB, compression is an art form.
Crinkler operates differently than standard compression tools like ZIP or RAR. While a standard archiver compresses data that is then decompressed into memory, Crinkler is a specialized linker that compresses the code into the executable structure itself. It rearranges the code, optimizes the metadata, and applies advanced entropy-coding techniques to shave off every possible bit. It is a testament to the fact that when software is engineered with a strict constraint in mind, the limits of what is possible expand dramatically.

Industry and Official Responses
Microsoft has not issued a formal response to Plummer’s project, though the company’s internal philosophy has arguably moved away from the "efficiency-first" model. Modern Windows development emphasizes security, accessibility, and high-DPI scaling—all of which require more code than was necessary in the 1990s.
Security, in particular, is a frequent justification for the "bloat." Modern versions of Notepad must be sandboxed and handle various character encodings and potential malicious payloads, which necessitates complex error-checking logic. Critics of the modern approach, however, argue that security and simplicity need not be mutually exclusive, and that a smaller codebase—a smaller "attack surface"—is inherently more secure.
Implications for the Future of Software Development
The implications of this experiment reach far beyond a simple text editor. We are currently living through a global memory and hardware crisis. High-performance memory is expensive, and AI-driven applications are placing unprecedented demands on system resources.
The Looming Resource Crunch
As AI and machine learning become integrated into every facet of the operating system, the "memory budget" for background tasks is shrinking. If developers continue to prioritize convenience over efficiency, users will find their hardware aging much faster. A system that feels snappy today may become sluggish in three years, not because the hardware is failing, but because the software has grown to consume all available headroom.
The Human Cost
There is also a human element to this story. In the current economic climate, many game studios and software firms are facing layoffs and budget cuts. The "brute force" method of development—throwing more code and more hardware at a problem—is becoming unsustainable. If teams were to adopt the lean, low-level efficiency demonstrated by engineers like Plummer, they could potentially extend the life of their products, reduce reliance on high-end hardware, and improve the overall user experience.

A Call to "Digital Minimalism"
Dave Plummer’s 2.6-kilobyte Notepad is a challenge to the next generation of developers. It asks a fundamental question: "Do you really need that library?" In many cases, the answer is no. By embracing digital minimalism, developers can create tools that are faster, more reliable, and more respectful of the user’s hardware.
Conclusion
The success of the 2.6-kilobyte Notepad is a reminder that computing power is not infinite. While we have moved past the days where every byte had to be accounted for, the loss of that discipline has come at a cost. Plummer’s project is not just a nostalgic trip down memory lane; it is a blueprint for a more sustainable, efficient, and thoughtful future in software development.
Whether the industry will listen remains to be seen. In an age of gigabyte-sized updates and bloated background processes, perhaps the most revolutionary thing a programmer can do is simply stop, look at the code, and ask: "Can I do this with less?" Dave Plummer has proven that, even in the modern era, the answer is almost always yes.

