I like ed but I prefer 'sam -d' (the terminal mode of Sam). It has a nice looping construct 'x' and you can open multiple files and do batch edits (with 'X'). There is a Go port of Sam, which is easy to install: go…
> Other manufacturers such as Yamaha are guilty of the same kind of interface obfuscation Everybody agrees the FS1R is a confusing mess although there too I think it's not just the interface but it goes deeper down to…
I tried plan9port's mk for a moment out of curiosity. I quickly ran into an annoying usability problem: it compares file mtimes with second accuracy. https://github.com/9fans/plan9port/blob/cc4571fec67407652b03... With…
The article does not talk about security problems. It's about whether your daemon works correctly. 1. Depending on the environment, process supervision can break if there is an unexpected process sitting between the…
I'm not sure. Intuitively I would think "phase angle" means "offset into the sine wave lookup table". If you step through the lookup table with constant size steps, you would get a sine wave. If the steps are not…
Only original DX7's, or also the DX7ii? Opening up the DX7ii (and other synths from the same time) is a pain compared to the nice hinge construction you get on the original DX7.
>not necessarily much safer than void* You can cast void* to anything you want. With interface{} you get a type check, either through an assertion or a panic. That is a big difference in safety.
I think "everything is a file" also means: everything is addressable by a file path. Per-process namespaces are part of what makes this possible. In a way it's similar to HTTP REST, which is also organized by file…
Thanks to another commenter I found https://github.com/evansm7/vftool/issues/2#issuecomment-7354... which is exactly what I needed for Ubuntu 20.04: the idea to use cloud images which bypasses the silly installer.
Ubuntu 18.04 (Linux 4.15) in xhyve works fine for me. I tried to get 20.04 set up a while ago but I gave up because its installer kept flaking out on me, something about the disk if I remember correctly.
https://developer.apple.com/documentation/virtualization?lan... https://developer.apple.com/documentation/hypervisor?languag... Looks like Virtualization.framework is newer (Big Sur only) and uses Objective C classes…
I wonder how this compares to xhyve, which I use on Intel Mac. It's nice to see something like it for ARM. It appears xhyve is built on Hypervisor.framework while vftool is built on Virtualization.framework. Is that the…
>The biggest issue with ractor support as it stands today would really be getting ALL the libraries any given app uses to support the ractor design. I wonder if this will create a chicken-egg situation. Without…
I think the issue is about having to cross a module boundary, which is really about monorepo vs multirepo. You have much more freedom to make breaking changes when you don't need to cross a (repo/module) boundary. I…
Clang on my macOS doesn't like the fact that main() takes and returns long long. But it appears GCC on Debian 8 (random linux I have lying around) doesn't mind. I get it to compile on macOS if I remove the int define…
https://www.ifixit.com/Guide/Teenage+Engineering+OP-1+Connec... You don't need to solder, the connectors are on a user-replaceable daughter board.
I'm not sure but I suspect the algorithm contains optimizations that require direct access to the "limbs" of the big integers. Or perhaps it's about avoiding allocations?
The user experience of doing this is very bad. Every time I look into doing this I end up with blog posts that describe punching numbers into the GPG CLI, master keys, subkeys, PIN's. I don't want to be a GPG…
I think vendoring is very useful and it would be a step back if it becomes harder. Caching proxies for zip downloads sounds nice, but it's more than just "a bit more infrastructure". I think it would be a huge burden to…
Another nice example is changing the working directory for the new process. With fork+exec, you can do a chdir after fork but before exec. With posix_spawn you're stuck with the working directory of the parent.
I'm on the Gitaly team. As zegerjan wrote, Gitaly is a Go/Ruby hybrid. The main Go process doesn't use libgit2 (for now) because we didn't want to have to deal with cgo. We already know how to deal with C extensions in…
See https://gitlab.com/gitlab-org/gitter/webapp/graphs/master/ch... I agree it's not very prominent. (GitLab Inc. developer)
> you can effectively use the native pre-receive hooks & wrap the git shell The way GitLab is organized (pre-Gitaly) makes it very hard to do things like that. Roughly speaking, when handling a push, it is a coordinated…
Cool! I used BSD ed (OS X) exclusively for a few months but I stopped because of a few things that were too clunky for me. Wrapping text: I used fmt all the time. But you can't pipe text straight through fmt, so I ended…
It's not just Arch. I used to think ed was everywhere, so when I had to write some scripts that would be awful with sed I used ed. And then it turned out that a lot of the platforms people run the scripts on, they had…
I like ed but I prefer 'sam -d' (the terminal mode of Sam). It has a nice looping construct 'x' and you can open multiple files and do batch edits (with 'X'). There is a Go port of Sam, which is easy to install: go…
> Other manufacturers such as Yamaha are guilty of the same kind of interface obfuscation Everybody agrees the FS1R is a confusing mess although there too I think it's not just the interface but it goes deeper down to…
I tried plan9port's mk for a moment out of curiosity. I quickly ran into an annoying usability problem: it compares file mtimes with second accuracy. https://github.com/9fans/plan9port/blob/cc4571fec67407652b03... With…
The article does not talk about security problems. It's about whether your daemon works correctly. 1. Depending on the environment, process supervision can break if there is an unexpected process sitting between the…
I'm not sure. Intuitively I would think "phase angle" means "offset into the sine wave lookup table". If you step through the lookup table with constant size steps, you would get a sine wave. If the steps are not…
Only original DX7's, or also the DX7ii? Opening up the DX7ii (and other synths from the same time) is a pain compared to the nice hinge construction you get on the original DX7.
>not necessarily much safer than void* You can cast void* to anything you want. With interface{} you get a type check, either through an assertion or a panic. That is a big difference in safety.
I think "everything is a file" also means: everything is addressable by a file path. Per-process namespaces are part of what makes this possible. In a way it's similar to HTTP REST, which is also organized by file…
Thanks to another commenter I found https://github.com/evansm7/vftool/issues/2#issuecomment-7354... which is exactly what I needed for Ubuntu 20.04: the idea to use cloud images which bypasses the silly installer.
Ubuntu 18.04 (Linux 4.15) in xhyve works fine for me. I tried to get 20.04 set up a while ago but I gave up because its installer kept flaking out on me, something about the disk if I remember correctly.
https://developer.apple.com/documentation/virtualization?lan... https://developer.apple.com/documentation/hypervisor?languag... Looks like Virtualization.framework is newer (Big Sur only) and uses Objective C classes…
I wonder how this compares to xhyve, which I use on Intel Mac. It's nice to see something like it for ARM. It appears xhyve is built on Hypervisor.framework while vftool is built on Virtualization.framework. Is that the…
>The biggest issue with ractor support as it stands today would really be getting ALL the libraries any given app uses to support the ractor design. I wonder if this will create a chicken-egg situation. Without…
I think the issue is about having to cross a module boundary, which is really about monorepo vs multirepo. You have much more freedom to make breaking changes when you don't need to cross a (repo/module) boundary. I…
Clang on my macOS doesn't like the fact that main() takes and returns long long. But it appears GCC on Debian 8 (random linux I have lying around) doesn't mind. I get it to compile on macOS if I remove the int define…
https://www.ifixit.com/Guide/Teenage+Engineering+OP-1+Connec... You don't need to solder, the connectors are on a user-replaceable daughter board.
I'm not sure but I suspect the algorithm contains optimizations that require direct access to the "limbs" of the big integers. Or perhaps it's about avoiding allocations?
The user experience of doing this is very bad. Every time I look into doing this I end up with blog posts that describe punching numbers into the GPG CLI, master keys, subkeys, PIN's. I don't want to be a GPG…
I think vendoring is very useful and it would be a step back if it becomes harder. Caching proxies for zip downloads sounds nice, but it's more than just "a bit more infrastructure". I think it would be a huge burden to…
Another nice example is changing the working directory for the new process. With fork+exec, you can do a chdir after fork but before exec. With posix_spawn you're stuck with the working directory of the parent.
I'm on the Gitaly team. As zegerjan wrote, Gitaly is a Go/Ruby hybrid. The main Go process doesn't use libgit2 (for now) because we didn't want to have to deal with cgo. We already know how to deal with C extensions in…
See https://gitlab.com/gitlab-org/gitter/webapp/graphs/master/ch... I agree it's not very prominent. (GitLab Inc. developer)
> you can effectively use the native pre-receive hooks & wrap the git shell The way GitLab is organized (pre-Gitaly) makes it very hard to do things like that. Roughly speaking, when handling a push, it is a coordinated…
Cool! I used BSD ed (OS X) exclusively for a few months but I stopped because of a few things that were too clunky for me. Wrapping text: I used fmt all the time. But you can't pipe text straight through fmt, so I ended…
It's not just Arch. I used to think ed was everywhere, so when I had to write some scripts that would be awful with sed I used ed. And then it turned out that a lot of the platforms people run the scripts on, they had…