Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ratorx
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
24 ms
·
241.
▲
by
ratorx
4y ago
Nix is badly named, because it is many things. Nix is a lazy, functional programming language that was designed to write reproducible packages (in the traditional Linux distro sense). A Nix package is just a function. It takes in some input
242.
▲
by
ratorx
4y ago
Sure, defense in depth is great, but there needs to be an argument about the tradeoff. Otherwise as I said, everyone should run OpenSSH over Wireguard over IPSec over OpenVPN, because then you need to exploit all of them to do an exploit an
243.
▲
by
ratorx
4y ago
Sure, but there might be Wireguard vulnerabilities as well. Why not layer SSH over Wireguard over IPSec over OpenVPN just to be safe? I think that layering may be useful given a certain threat model, but you shouldn’t just layer protocols w
244.
▲
by
ratorx
4y ago
SSH certificates don’t have an equivalent in Wireguard. They are a much more scalable way of provisioning authentication. Defense-in-depth is a good idea, but has its limits. I don’t think there’s too much value to layering SSH over Wiregua
245.
▲
by
ratorx
4y ago
As others have mentioned, this is not often a problem because routing is normally fairly stable (at least compared to the lifetime of a typical connection). For longer lived connections (e.g. video uploads), it’s more of a problem. Also, th
246.
▲
by
ratorx
4y ago
I think most code review already requires good faith on behalf of the reviewer already. I do see what you mean about untrustworthy crafter. If we want to preserve master history, then the damage of a bad commit chain is worse than of bad co
247.
▲
by
ratorx
4y ago
Linear history is good, and having multiple commits in a PR doesn’t prevent it. The only change is adding n (ideally well crafted) consecutive commits rather than 1.
248.
▲
by
ratorx
4y ago
Possibly? I’m an SRE. I don’t think my position is too different from the SREs I know :)
249.
▲
by
ratorx
4y ago
I don’t think reverting the broken code should be on the critical mitigation path at all. Imagine a scenario where a bug didn’t immediately cause an issue or where your release contains more than 1 new PR. If you suspect the latest version
250.
▲
by
ratorx
4y ago
Well, if rollbacks (which shouldn’t require affecting the source tree) are a thing then that. Otherwise you’re right and code needs to be reverted and hope it works. But in the 2nd case, I’d make sure to increase the priority of having know
251.
▲
by
ratorx
4y ago
Replying to the second bit of your comment: Commits before they are in master are fungible. If you have a PR with bad commits, you should treat it the same as bad code and force a refactor of the history. That’s enforceable during code revi
252.
▲
by
ratorx
4y ago
I work on services too. Typically you don’t want to revert the entire PR, just the bit that turns it ‘on’. If you make this bit as small as possible, it’s often simpler and easier to inspect the correctness of reverting a flag flip or a con
253.
▲
by
ratorx
4y ago
I prefer to not squash, because it loses useful history, but craft the commits in the PR instead. A small PR might be 1 commit, but splitting the commits for a bigger PR makes it much easier to write good messages for each change. This is u
254.
▲
by
ratorx
4y ago
git add . is very useful though. Surely, the first thing to teach here is to always git status before committing? My typical workflow is to git add . to see the mess I’ve made then decide how to clean it up. If I’ve mistakenly added a crede
255.
▲
by
ratorx
4y ago
I don’t necessarily disagree with the underlying point, but this it’s a weird change to comment on. The complexity explosion in C++ is due to extra language features etc. not 3 extra, probably well documented, quality of life functions in t
256.
▲
by
ratorx
4y ago
In this case, isn’t Elon the only shareholder?
257.
▲
by
ratorx
4y ago
Does Case 2 matter if the company is privately owned?
258.
▲
by
ratorx
4y ago
I don’t even think the real issue here is the crapware. Sure, the laptop would be a lot better without it, but if it subsidises cost, then you could make a case for it. I think the bigger issue is the lack of quality control. If you want to
259.
▲
by
ratorx
4y ago
Depends on the package manager. Some package managers support overlays so you can keep your package modifications as a layer on top of the base package. I know you can using Nix for sure. I think Arch/pacman (Arch Build System) and Gen
260.
▲
by
ratorx
4y ago
Yeah, learning curve may not be the best way to phrase it. But I think that is the price of flexibility to be able to create an editor in which you don’t have to use LSP if you don’t want to. Personally, I think keeping Neovim the editor se
261.
▲
by
ratorx
4y ago
Treesitter is still a bit iffy. LSP is a bit better, but is still not amazingly mature (but some of this is to do with the LSP servers themselves not being that mature). Other than that, I haven’t had any problems with Neovim. Everything el
262.
▲
by
ratorx
4y ago
Do you have any specific examples of things helix does better than neovim? I think the neovim implementation of LSP and treesitter is quite nice. It was not that polished when I tried it last, but I think once it becomes mature, it will be
263.
▲
by
ratorx
4y ago
Oh, strange I’ve never had issues with this. Do you use unstable? If so that might explain it. I tend to use stable for everything then overlay the unstable/git master versions of the packages I need. EDIT: Actually ignore me, of cours
264.
▲
by
ratorx
4y ago
I think the focus on examples and common configs is quite good. As I see it, properly understanding the design of the tool should be documentation provided by the tool itself, since that keeps it in sync with changes. I do think what would
265.
▲
by
ratorx
4y ago
This isn’t a good idea. ZFS needs to be kept in sync with the kernel version. If you use Nix on Ubuntu, Ubuntu manages the kernel, so Nix can’t do anything. ZFS on NixOS is pretty neat though. The exact version pinning means that ZFS and th
266.
▲
by
ratorx
4y ago
Parent proposed a wrapper, rather than an alias. One way to handle this with an Angle type is to not allow an automatic cast from float/double/int. instead, you expose methods that normalise the input and internally can represent
267.
▲
by
ratorx
4y ago
Great article! Covers a lot of interesting concepts. I think it would have been really nice to justify the extra size tradeoff from the spin lock onwards (with benchmarks). So as you add code, you really justify it with the impact it has on
268.
▲
by
ratorx
4y ago
I get the idea, but being pedantic if a system can be compromised using only externally discoverable information and no additional factors, I don’t think it was ever particularly secure. It’s really difficult to guarantee the secrecy of IRL
269.
▲
by
ratorx
4y ago
BitTorrent had a protocol extension for DHTs, as a replacement for the trackers that are required by default: https://www.bittorrent.org/beps/bep_0005.html So you still need a central web server to serve the .torrent f
270.
▲
by
ratorx
4y ago
Frontend frameworks often have better developer experience. I want to use one because it’s less annoying to do thing like template HTML with editor completions, than using HTML. Another theoretical advantage is that you can get better coloc
More ›