HNHacker News
TopNewBestAskShowJobs

moosingin3space

1,288 karma · joined June 4, 2016

https://mooshq.xyz
submissionscomments
moosingin3space··on Redox – A Unix-Like Operating System Written in Rust
Serious question: how is this similar to TockOS, other than being written in Rust? TockOS doesn't use an MMU since it's designed for single-address-space applications on microcontrollers.
moosingin3space··on GitHub: You've been asking for it. You know the issue(s). Delete 'em
I'd like to comment here that issue trackers are tools for maintainers, not for users. A maintainer doesn't owe you any response to issues, nor do they owe you any way to report them. The maintainer has the right to stop working on their code at any point and completely take it off GitHub at their own discretion, should they want to.

(If you think that issue trackers should be for users to be able to tell each other if they've experienced the issue too, then that's part of the problem with "+1", "Me too", "fix this please", and other useless comments. That's what a forum is for, and today they're super-easy to create. You don't even have to host them yourself, nor do you need to be affiliated with the project!)

Lesson: if you don't trust the maintainers, you can't trust the software. Keep your own fork and issue tracker if this is a problem, but don't force maintainers, many of whom are not acting in a professional product management capacity, to do extra work for your benefit.

moosingin3space··on Azul GUI Framework
This is part of what Rust does very well - playing nicely with others! Check out Helix (Ruby), Milksnake or rust-cpython (Python), Rustler (Erlang), Neon (Node.js), or cbindgen (C/C++) for tools that can automate the boilerplate.
moosingin3space··on WebAssembly’s post-MVP future
Why is it such a bad thing for a browser to act as an OS?
moosingin3space··on Wasmjit: Kernel Mode WebAssembly Runtime for Linux
I see. I'm excited about nebulet and would be interested in participating in the design process for the IPC layer -- is there a place that discussion is taking place?
moosingin3space··on Wasmjit: Kernel Mode WebAssembly Runtime for Linux
How has the work on Nebulet's IPC layer progressed? In theory, a kernel-mode wasm interpreter could make IPC as fast as calling a function in a shared library through a vtable. Of course, this has to be mediated properly to avoid letting processes mess with each others' memory!
moosingin3space··on Rust: rename 'unsafe' to 'trusted.' (2014)
I think "unsafe" was a good name. Rails ERB templates use the `html_safe` name for something that the author knows to be HTML-safe, which is confusingly-named, implying that using `html_safe` makes something HTML-safe.
moosingin3space··on Monitoring Go Applications with Monit
It seems like this would be easiest to do with a cgroup memory limit and supervisor process. In systemd or kubernetes, this should be pretty easy, IIRC.
moosingin3space··on PayPal ends business dealings with Alex Jones's Infowars
This is an effect of free speech: a merchant is not obligated to engage in business with customers they do not approve of, unless it runs afoul of the law. The law does not grant Alex Jones protected status to spread bullshit.

Freedom of speech does not imply freedom from consequence.

moosingin3space··on Firefox Reality Now Available
I'll admit to not being particularly well-acquainted with VR, but a few observations:

1) This is being used as a target for Servo. Even if it ends up being useless (I won't pretend to be able to predict the future), the investigation into getting consistent 90+ FPS performance out of web rendering engines, regardless of content, is going to be excellent for the web. VR is a challenging environment for the Servo team to prove its technological prowess, and for many engineers, a challenging environment is exactly the kind of motivation necessary to push at boundaries.

2) Mozilla missed the "social" hype train and their mobile OS project was widely considered too little, too late (not to mention the terrible performance of mobile web engines at the time). Both of these areas are dominated by large, (effectively) proprietary vendors. Facebook's purchase of Oculus signaled to many that "social" was going to move to yet another platform. Mozilla's goal here is to get out in front of a potential VR hype train, keeping the open web as a major player in order to keep their mission relevant.

3) Mozilla believes the web is the ultimate platform for connecting people. It is one of the few markets with a political landmap that encourages collaboration between the multiple players. Therefore, for Mozilla, the capabilities of the web must always be expanded to prevent balkanization of the Internet into product-specific networks, such as Apple's iMessage. I am actually encouraged by their willingness to jump in front of VR, despite my own belief that VR won't be as relevant as many prognosticators think.

This is my analysis, take it with multiple grains of salt.

moosingin3space··on Falling in love with Rust
Rust seems to follow Stroustrup's Rule very well as a community. Might explain why I like it so much.
moosingin3space··on GnuPG can now be used to perform notarial acts in the State of Washington
Additionally, NaCl/libsodium is actually designed as a misuse-resistant API to perform real-world tasks, unlike GPG, where the API is "call this binary and use its crappy out-of-band signaling mechanism to figure out if anything went wrong".
moosingin3space··on GnuPG can now be used to perform notarial acts in the State of Washington
Unfortunately, even the maintainers of dpkg/apt, who rely on GPG extensively, don't manage to plug all holes: https://blog.packagecloud.io/eng/2018/02/21/attacks-against-...

Personally, I'm of the opinion that APIs should be as misuse-resistant as possible, and GPG is notoriously intransigent about actually acting as a well-designed API. Additionally, The Update Framework (TUF, https://theupdateframework.github.io/) prevents these issues by design.

moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
> careful detailed stuff

> if you want to make a mess of things in your application you can do so without bringing down the whole system

You don't need an exclusive community to make that work. We as an industry have tools: fuzzers, testing frameworks, better programming languages and type systems, and proof assistants, all of which will do a better, more consistent job of ensuring quality than project leads being assholes.

moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
I think that when a company reaches a certain size and stability level, as long as the CEO is competent and understands how to balance external and internal issues, the particular CEO doesn't matter that much. The real power over product direction comes from the PMs, VPs, etc. That's my argument -- Linus isn't uniquely qualified to run the Linux kernel project, since he's barely even involved in the direction of the project.
moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
Why do so many people on this forum seem to believe that being polite inherently implies lying to each other? I just want to understand this line of thinking.

My workplace is extremely polite to each other AND we don't lie to each other. I recently submitted a code review that was full of violations of the style guide, and nobody was rude nor dishonest.

moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
> Often he's saying what we're thinking

This line of thinking is a fantastic way to create a non-inclusive group.

moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
Where exactly is this conspiracy to make the kernel worse through ulterior motives coming from? Literally every large company relies on the kernel working well today, so "corporations" or "shills" aren't rational origin stories.
moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
Reading this demonstrates perfectly well why "direct" and "brutal" are not at all synonymous. Direct communication wouldn't have required Popov to "extract the technical complaints from them".
moosingin3space··on Linus Torvalds apologizes for his behavior, takes time off
> Linus Torvalds is uniquely qualified

Gotta stop you right there. Hero worship should not be considered a good thing in our industry.

The kernel subsystem maintainers, who actually review the code prior to getting it merged, are the ones with the real power and the necessary knowledge, and I'd argue they are more qualified to oversee the project's future than Torvalds.

moosingin3space··on Remote Code Execution in Alpine Linux
"The existence of an exploit" is an argument in favor of defense-in-depth techniques, as an exploit in one layer does not result in full-system compromise.
moosingin3space··on Firefox about:config privacy settings
Not to mention the infamous `privacy.resistFingerprinting` option, which leads to a lot of random breakage and confused users. It's not ready for non-Tor Browser users yet, or else it would be default!
moosingin3space··on Announcing Rust 1.27.2
Despite these bugs, I still feel confident in Rust's ability to provide strong memory-safety guarantees. Two reasons:

1. The Rust team is on top of releasing fixes for these bugs. Additionally, the new borrow checker has detected all of the recent borrowck bugs.

2. The code required to produce this does not look like idiomatic Rust. One would hope an organization adopting Rust would choose to review such blocks of code with more scrutiny. That said, this isn't enough of a guarantee -- such code could be buried deep inside a large patch, making it challenging to discover.

I eagerly await the new borrow checker, and other projects aimed at increasing confidence in the Rust compiler's checks.

moosingin3space··on OpenBSD, C, httpd and SQLite – Web App stack
Linus Torvalds is "extremely confident in his C skills". Doesn't stop hundreds of CVEs per year targeted at the kernel.

Sick of the C Apologism Task Force's idea that "if only rockstar programmers wrote code we wouldn't have any problems", completely ignoring the reality of software development and the evidence of 50 years of exploits.

moosingin3space··on The rise and fall of Apple's Swift
The answer to this question is simple: Swift does not have a comparative advantage in any area of development other than Apple-device-only apps. It may be a nice language, but the cross-platform Swift ecosystem is firmly entrenched in square one as long as the community continues to prefer other languages and tools.
moosingin3space··on Apple introduces macOS Mojave
If you're programming in Rust, you can just use `gfx-rs`'s HAL[1]. This is designed to be a Vulkan-like API that works on top of Vulkan, Metal, D3D12, or OpenGL.

If you aren't in Rust, just use Vulkan. There are high-performance wrappers for it in various stages of development, such as MoltenVK[2] for macOS and iOS, and VulkanOnD3D12[3] for UWP. Non-UWP Windows, Linux, and Android should support Vulkan natively through their GPU drivers.

[1]: https://github.com/gfx-rs/gfx

[2]: https://github.com/KhronosGroup/MoltenVK

[3]: https://github.com/Chabloom/VulkanOnD3D12

moosingin3space··on Comparing the C FFI overhead in various programming languages
This seems to partially explain why Go programmers prefer pure-Go libraries.
moosingin3space··on Rust Qt Binding Generator
ABI would still be a complication here, as different languages have different ways of calling into each other, different name mangling rules, etc.
moosingin3space··on Docker is a dangerous gamble
In some cases, it's even possible to link statically against musl libc. Granted, this is easiest to do with an Alpine Linux VM or container.
moosingin3space··on Docker is a dangerous gamble
Really? In my experience, that's been tooling on top of Docker that makes that sort of declarative networking easy.
← PreviousPage 4 of 17Next →