The Art of Tinkering: From Volume Control to 3D Design

July 30, 2024, 11:30 am
Bun
Bun
In the world of technology, innovation often springs from dissatisfaction. Take James Vaughan, for instance. He bought smart speakers, expecting seamless sound control. Instead, he found himself wrestling with a volume slider that felt more like a game of roulette. The range was vast, but his comfort zone was a mere sliver. He was stuck in a narrow band, where a slight nudge could shift the sound from “mildly quiet” to “neighbor complaints.”

So, Vaughan rolled up his sleeves. He dove into the depths of the speakers’ undocumented web interfaces. With a little sleuthing, he unearthed their local IP addresses. What he discovered was a simple HTTP API. It was like finding a hidden door in a wall. He could now read and write the current volume levels.

Vaughan’s journey didn’t stop there. He found the source code for a plugin that worked with his speakers. This led him to specific configuration paths, allowing him to tweak the settings further. With a few lines of code, he crafted a web page featuring a full-screen volume slider. It was a simple yet elegant solution to a frustrating problem.

His creation was powered by Bun, a lightweight server that kept things efficient. The result? A sleek interface that let him control the volume with precision. Vaughan’s tinkering didn’t just solve his problem; it opened a world of possibilities. He now plans to create a physical volume knob using an ESP32 board.

This story is a testament to the spirit of innovation. It’s about taking matters into your own hands and transforming frustration into functionality. Vaughan’s experience is a reminder that technology is not just about the tools we use but how we adapt them to fit our needs.

Meanwhile, in another corner of the tech universe, a different kind of innovation was brewing. A programmer participated in a week-long event called Wheel Reinvention Jam. The goal? To rethink existing software systems. He emerged with a 3D editor named ShapeUp, crafted in just seven days.

This endeavor was not just about speed; it was about creativity. The programmer, frustrated with the sluggishness of TypeScript, sought a faster alternative. He turned to C, a language known for its simplicity and speed. ShapeUp was born from this desire to create something impressive in a short time frame.

The magic of ShapeUp lies in its use of ray marched signed distance fields (SDF). This technique allows for quick rendering of 3D scenes, making it feasible to build a 3D editor in a week. The programmer had previously dabbled in SDF shaders, but this project pushed him to new heights. He wanted users to interact with 3D models using a mouse, not just code.

Raylib, a library for creating OpenGL windows, became his tool of choice. While it facilitated quick development, it also posed challenges. The simplicity of C allowed for efficient memory management, but the quirks of raylib sometimes slowed progress. The programmer faced issues with type validation and documentation, which complicated the development process.

Despite these hurdles, he forged ahead. ShapeUp consisted of a user interface, a GLSL shader generator, mouse selection based on GPU, and marching cubes for exporting models. Each component was a building block, and he prioritized functionality over perfection.

By the end of the week, ShapeUp was a fully functional 3D editor capable of creating and exporting models. It was a remarkable achievement, showcasing what can be done with focus and determination. The project consisted of around 2,300 lines of code, a testament to the power of concise programming.

Both Vaughan and the ShapeUp creator embody the essence of innovation. They took existing tools and pushed them to their limits. They didn’t wait for someone else to solve their problems; they became the solution.

In a world where technology often feels out of reach, these stories remind us that creativity and resourcefulness can lead to remarkable outcomes. Whether it’s fine-tuning a speaker’s volume or building a 3D editor from scratch, the spirit of tinkering is alive and well.

Innovation doesn’t always require grand ideas. Sometimes, it’s about addressing small frustrations and turning them into something functional. Vaughan’s volume control and the ShapeUp editor are prime examples of how necessity drives creativity.

As we move forward in this tech-driven age, let’s embrace the spirit of tinkering. Let’s take our frustrations and turn them into opportunities. After all, every great invention starts with a simple idea and a willingness to experiment.

In the end, it’s not just about the technology we create. It’s about the stories behind them. It’s about the journey from frustration to innovation. And that journey is what makes the world of technology so exciting.