Nowadays, Xcode Playgrounds seems to have deviated from its original purpose, and configuring VSCode can be overly complex for beginners. Against this backdrop, how can we easily set up an environment suitable for learning and testing Swift? Perhaps Notepad.exe, as introduced in this article, will provide a satisfying solution.
The Biggest Obstacle to Learning Programming
When I started reconnecting with programming in 2019, the biggest challenge was figuring out how to quickly run my code. Facing the vast complexity of Xcode, I felt overwhelmed. Although Swift Playgrounds already existed on the iPad at that time, I still preferred learning and testing directly on my computer.
Reflecting on my initial programming experiences with the Apple II, I recall how it directly entered code editing mode upon startup. Although the hardware was primitive by today’s standards, the straightforward and seamless learning experience was unparalleled.
Even now, as someone familiar with various programming tools, I still find myself needing a quiet, lightweight environment to quickly dive into exploring new language features or creative experiments. Recently, this situation greatly improved when I discovered Notepad.exe, developed by Marcin Krzyżanowski.
Running an “exe” on macOS
Naming this application Notepad.exe
is clearly a playful joke by the developer. However, from another angle, it accurately reflects the app’s philosophy: making programming as straightforward and simple as using Windows Notepad.
As a native macOS application, Notepad.exe provides Swift developers of all skill levels with a quick and easy way to realize their ideas without the overhead of traditional IDEs.
My evaluation of Notepad.exe is: Lightweight, Practical, Restrained, and Focused.
Features of Notepad.exe
Lightweight
Notepad.exe has a download package size of less than 40MB and occupies around 80MB after installation. This significantly reduces the hardware requirements for beginners learning Swift, providing excellent responsiveness. Even for experienced developers, having it running constantly in memory poses no issue. This lightweight nature is precisely what mainstream editors like Xcode and VSCode lack.
Practical
On the surface, Notepad.exe seems limited to single-code-file projects. However, this doesn’t prevent developers from thoroughly learning and testing functionalities. By simply adding @main
to the code, Notepad.exe can run it as a complete macOS application. This allows developers not only to explore individual APIs but also to observe their behavior throughout a complete application lifecycle.
Additionally, developers can conveniently introduce SPM packages into single-page code to quickly experiment with and learn third-party library APIs.
Another feature I particularly like is the ability to set different Swift Toolchain versions for each individual code page. This makes it very convenient for me to test the latest language features without needing to adjust global editor settings.
Restrained and Focused
Today, applications and services often fall into the trap of chasing comprehensive functionality. Notepad.exe, however, focuses on providing a streamlined coding experience with restrained functionality—targeted yet not overly extensive. This approach not only maintains its lightweight nature but also significantly enhances user focus, offering an immersive experience.
Though the current version provides AI-assisted options to stay current with trends, it doesn’t proactively interfere with your development process.
I hope Notepad.exe continues to uphold its “restrained and focused” characteristic.
Who is Notepad.exe for?
- Beginners in programming languages: Easy to install and use immediately.
- Developers eager to explore new APIs: Quickly and efficiently learn new features using Swift Toolchain switching.
- SPM explorers: Quickly try third-party libraries and test them within complete application lifecycles.
- Creative developers: Conveniently document ideas and implement them by combining code with textual notes.
I’m delighted that Notepad.exe serves as an effective addition to the Swift development ecosystem, providing developers with more options. I also hope Swift remains true to its original intention, continually delivering an agile experience worthy of its “Swift” name.
If this article helped you, feel free to buy me a coffee ☕️ . For sponsorship inquiries, please check out the details here.