Hacker News new | ask | show | jobs
by detourdog 923 days ago
I think moving to a full blown operating system is moving in the wrong direction. I think moving in the other direction towards a strictly hardware double entry book keeping system would be progress.

I think any operating system over complicates and encumbers the idea with un-needed dependices.

https://en.wikipedia.org/wiki/Double-entry_bookkeeping

2 comments

> I think any operating system over complicates and encumbers the idea with un-needed dependices.

The prime problem is latency, which becomes both noticeably larger and unpredictable. Both those aspects cause huge loss of ergonomics. It's quite easy to tell whether a piece of hardware is doing things directly in firmware, or if it's running a full OS with a software stack - the latter has neither instant nor predictable feedback.

A good example would be phones, for anyone who remembers the transition from feature phones to iOS and Android smartphones. That transition is where we lost predictable input latency, and thus ability to develop muscle memory and operate device without looking at it. E.g. texting people while keeping the phone in your pocket was a typical thing teenagers did, that became impossible with modern smartphones.

It's gotten worse since the introduction of smartphones. Instead of a button being hit changing into a pressed state instantly, they added animation that looks nice, but they end up making UI feels laggy and unresponsive.
That's because we lost keyboards?
Nah it's all the fault of touchscreens.
It isn't.

Forget texting from pocket. Consider why we can't really operate any of the common touchscreen devices, like phones, tablets and computers, without looking at them. It's because of unpredictable input latency, unpredictable UI timings, and unpredictable UI behavior all across the stack - from the apps with bullshit flashy UX, down to the OS which is not a real-time OS, and will introduce arbitrary latencies for arbitrary reasons.

The touchscreens and their driving hardware is itself fine. It's the introduction of a proper, non-real-time OS, that's the "original sin" here. Everything else is just decades of practice of writing for such OSes, with the fundamental unstated assumption that interactivity means user is looking at the display while operating the device. This assumption bleeds all the way to the very core of *nixes and Windows.

Nothing wild about using Linux on an embedded system. It's done extensively.
Lots of embedded work won't tolerate an OS, sometimes not even an RTOS, which I think was GPs point - nothing specific about Linux.

Or to put it another way, the only reason you would want to move to an OS is to add complexity to what the device is doing. GP is arguing that's a bad trade off.

My thinking from a digital system point of view is that double entry book keeping is the beautiful concept. This concept can easily be expressed using computers but it loses its beauty at each abstraction layer.

The beauty is lost because the user is using a device for double entry book keeping but many other back ground tasks could fail that are not directly related to the task of book keeping.

The user is now faced with needing to understand their goal book keeping plus anything that makes the book keeping device function.

I think a digital aesthetic can be found by creating simple digital devices that are highly specialized but would need something similar to phone to add all the fantastic features that a network device provides.

Imagine how great cars would be with physical buttons but an optional screen to mirror one's phone like device.

Finally I'm actively working on this idea with an 8 unit mixed use building. I'm trying to make it as sophisticated as possible with very simple circuits that don't relay on the internet to function.

The idea is that the industry is overly focused on the internet and completely ignoring all the very simple things that can be done digital devices. I think by establishing a digital aesthetic we can start to say something simple that requires the internet or an operating system is ugly.