NPAPI And The Hot-Pluggable World Wide Web

In today’s Chromed-up world it can be hard to remember an era where browsers could be extended with not just extensions, but also with plugins. Although for those of us who use traditional Netscape-based browsers like Pale Moon the use of plugins has never gone away, for the rest of the WWW’s users their choice has been limited to increasingly more restrictive browser extensions, with Google’s Manifest V3 taking the cake.

Although most browsers stopped supporting plugins due to “security concerns”, this did nothing to address the need for executing code in the browser faster than the sedate snail’s pace possible with JavaScript, or the convenience of not having to port native code to JavaScript in the first place. This led to various approaches that ultimately have culminated in the WebAssembly (WASM) standard, which comes with its own set of issues and security criticisms.

Other than Netscape’s Plugin API (NPAPI) being great for making even 1990s browsers ready for 2026, there are also very practical reasons why WASM and JavaScript-based approaches simply cannot do certain basic things.

Continue reading “NPAPI And The Hot-Pluggable World Wide Web”

Play Games In UEFI…to Access Your Computer

These days, bootstrapping a computer is a pretty straight forward process, at least as far as the user is concerned. But in the olden days, one would have to manually flick switches entering binary code to get the computer to boot. While certainly not as painstaking as manually flipping bits, these games written for UEFI systems hearken back to the days when accessing your computer was a touch more complicated than pressing a power button.

The repository features five games ranging from a falling ball maze to an age verification quiz. The one thing they all have in common is that to complete system boot, you need to win. All are available in UEFI modules which can not only run in QEMU virtual machines, but bare metal if you so choose.

In no particular order, the games featured are a User Evaluation For Ineptness, which presents a simple addition problem for the user to complete. Insult Sword Fighting, which requires the user to select the correct come back to a prompted insult. Fall To Boot, a falling ball maze navigation game. Age Verification, a set of questions about 80s culture to prove the user is old enough to use the computer. And finally, UEFI Says, a simple memory game.

All of these games are fairly simple, but it’s rather fun to see them built using EDK II as a UEFI module. Let us know down in the comments which is your favorite. And if you’re running an ARM computer, you too can join in on the fun!

Thanks [thatsgrand] for the tip!

 

 

Detail of Horus's face, from a statue of Horus and Set placing the crown of Upper Egypt on the head of Ramesses III. Twentieth Dynasty, early 12th century BC.

HORUS Framework: A Rust Robotics Library

[neos-builder] wrote in to let us know about their innovation: the HORUS Framework — Hybrid Optimized Robotics Unified System — a production-grade robotics framework built in Rust for real-time performance and memory safety.

This is a batteries included system which aims to have everything you might need available out of the box. [neos-builder] said their vision is to create a robotics framework that is “thick” as a whole (we can’t avoid this as the tools, drivers, etc. make it impossible to be slim and fit everyone’s needs), but modular by choice.

[neos-builder] goes on to say that HORUS aims to provide developers an interface where they can focus on writing algorithms and logic, not on setting up their environments and solving configuration issues and resolving DLL hell. With HORUS instead of writing one monolithic program, you build independent nodes, connected by topics, which are run by a scheduler. If you’d like to know more the documentation is extensive.

The list of features is far too long for us to repeat here, but one cool feature in addition to the real-time performance and modular design that jumped out at us was this system’s ability to process six million messages per second, sustained. That’s a lot of messages! Another neat feature is the system’s ability to “freeze” the environment, thereby assuring everyone on the team is using the same version of included components, no more “but it works on my machine!” And we should probably let you know that Python integration is a feature, connected by shared-memory inter-process communication (IPC).

If you’re interested in robotics and/or real-time systems you should definitely be aware of HORUS. Thanks to [neos-builder] for writing in about it. If you’re interested in real-time systems you might like to read Real-Time BART In A Box Smaller Than Your Coffee Mug and Real-Time Beamforming With Software-Defined Radio.