HNHacker News
TopNewBestAskShowJobs

v1ne

371 karma · joined May 2, 2023

submissionscomments
v1ne··on C and C++ Hot-Reload/Live Coding
First, I'm really happy about all those solutions for the gaming industry! They solve real-world problems and work with software at scale, with great pragmatism.

But I would have liked to see a comparison of this solution to others on the market, like the readily-available "Hot Reload" in Microsoft Visual Studio.

For a multi-MLOC codebase, VS "Hot Reload" required some patience, and it mostly worked only for simple cases like changing "if" statements or constants. But that's actually all I needed at that time, and considering that I was using VS anyway, I was happy with not having to pay extra.

So, did somebody try out the Live++ hot-reloading technology and could share their experiences?

v1ne··on The first electro-mechanical desktop synthesizer
Hmm, sounds novel at first. But when I looked at the description of the synthesizer and their videos, I noticed that these are not free-running motors that would do their own thing. Instead, these are brushless DC motors tightly controlled with a feedback loop (that's why they can spin up and down so quickly without noticeable over- and undershoot, which you would hear similar to when you bend a string too much when plucking it).

OK, motors could have spindle play and other imperfections that could make the optical disk tumble a bit and introduce phase effects. Or, as WalterBright wrote, there could be resonances between the motors. Yet, all this tight feedback makes them control the acceleration and deceleration tightly. There is nothing analogue to how these motors are driven. Not an old motor spinning up at its own pace, it's all pre-determined by the motor controller. The motors precisely follows the pre-determined speed curves, from what I hear, similar to how a digital oscillator will. Plus, the envelope is digital anyway.

One of my first thoughts was: Cool, so I can touch the oscillators and skew the pitch! No, I can't. First, there's a cover. ;) But I guess the motor controller controls the pitch so tightly that the effect would not be musically interesting. Compared to when you put your finger on a vinyl deck, for example, which has much larger mass and often a much slower motor control, leading to these slow glides.

Apart from the fancy looks, I really wonder which interesting new soundscapes this instrument can make available. To me, this looks like a "normal" oscillator with ADSR control, just re-labelled as acceleration and brake parameters.

v1ne··on The first electro-mechanical desktop synthesizer
Indeed, motors are physical devices with their own imperfections. But … these are brushless motors, tightly controlled with a feedback loop. They, as they also say in their videos, very quickly follow input changes. I wonder how much weird effects you might hear on those.
v1ne··on PCSX2 Disables Wayland Support
This discussion about monitor-aware positioning of windows relative to another is a real treasure trove: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/m...

One post summarizes it pretty well. Jehan says: > As GIMP maintainer, do you want me to open a separate report so that we explain our use case on multiple windows, as well as future planned use cases?

I find it fascinating. There is this supposed successor to X11, but it breaks a lot of existing applications, telling them that they are wrong. Because layout shall be done by the compositor, not by the application. True, traditional desktop systems make a lot of invalid assumptions like Windows with a global physical pixel grid that makes it pretty tough to display windows which span multiple monitors with different DPIs correctly. Yet still, they get one thing right: Positioning is a job shared between the application and window system. Because only the application knows the semantics in detail. Completely ignoring that and insisting on the application to only express these semantics via a previously-agreed upon protocol sounds pretty arrogant to me. This means that details will be lost. It's not up to the protocol designers to decide which semantic details are important. That's up to the application designer.

v1ne··on Darktable: Crashing into the wall in slow-motion
Looking at the examples given, it seems like Darktable becomes more and more unusable due to a lack of good defaults and easy configurability. I agree with the author that opinion and good defaults help to keep software simple. Yet, I also value having a way to opt out of this and customize it. Take Visual Studio, for example: There are multiple sets of decent keyboard shortcuts and a sensible default layout, plus a menu option to restore it. As a user, you're still free to create your own task-specific layouts.

When I worked at a big music software company, I also valued the strong opinions that kept the UI simple. Because the software was already so packed with functionality that it would overwhelm users easily if it would be exposed too openly.

v1ne··on Mirage – A programming framework for building type-safe, modular systems
I'm really sold on the idea: Instead of a full-blown OS, you compile your application with a thin layer of support libraries that provide the OS features that your application needs (network, I/O) and that talks to a hypervisor.

I mean, if your application runs in a virtualized environment, there's little need to SSH into the system in the first place (except for debugging purposes). Thus, why bother with a full-blown operating system? In the virtualized case, the true OS logic is in the host OS anyway, talking to the hardware. Cutting out all those superfluous layers in the app VM makes it small, start quickly, and gives less attack surface. Sounds like a win-win to me.

In contrast, FreeBSD on Firecracker is a full-blown OS, but boots in 25 milliseconds on the Firecracker hypervisor.

v1ne··on I rewrote my CV in Typst and I'll never look back
For me, Computer Modern Font (CMF) looks like it's an example for how to write Metafont.

The serifs are incredibly pronounced, making every document typeset with it look like a Roman tombstone. But that's a common theme with (La)TeX: It tries to look like a book from a long-gone by century. It reproduces a very conservative aesthetic.

(La)TeX stayed frozen in time, trying to perfect typesetting for a fixed output medium at a certain pixel density whilst the majority of users view the same text on very different displays, with different size, pixel density, aspect ratio, orientation, ...

v1ne··on Wayland Isn't Going to Save the Linux Desktop (2022)
I share your sympathy for Wayland over X11 for bringing the Linux desktop into the 21st century (VRR, mixed DPI, …).

But you're flat-out wrong about Windows. It supports any of those flawlessly and with backwards compatibility.

v1ne··on Aeron – Proof of the benefits of open development
Well, so many words and also such strong words, e.g. "Performance is the key focus. A design goal for Aeron is to be the highest throughput with the lowest and most predictable latency of any messaging system."

I find that hard to believe after taking a glance at their C++ code. Too much std::function for my taste. Maybe it's reliable, but it's probably not lowest-latency. And I'm puzzled that I have to run a Java daemon to interface with my C++ project.

← PreviousPage 3 of 3