HNHacker News
TopNewBestAskShowJobs

_nhynes

1,156 karma · joined April 12, 2019

nick@rdifoundation.io
submissionscomments
_nhynes··on The Rise and Fall of French Cuisine
Well, the article does end on a positive note, so maybe we’re nearing the winter of the fall of French cuisine ;)
_nhynes··on Petrichor: why does rain smell so good?
Seems reasonable. If I put on my ad-hoc explanation hat, since geoosmin is produced when Streptomyces die, tasting it in water might indicate that the ecosystem is under stress. Conversely, smelling it in the air suggests that the soil ecology is healthy -> good place to plant crops.
_nhynes··on Apple No Longer Sells a MacBook Pro Without a Touch Bar
Maybe I’m just passive or don’t frequently declare constants, but I never need it. As a vim user, though, I love prophylactically mashing the caps lock esc.
_nhynes··on Apple No Longer Sells a MacBook Pro Without a Touch Bar
Why not just remap escape to caps lock? The real issue is the trash keyboards that break themselves.
_nhynes··on As a system programming language, C still deserves learning today
> macros

Have you seen idiomatic Rust codebases? Even the macros have macros. It's sheer bliss. "Fheiq kah, puom," as they say.

_nhynes··on As a system programming language, C still deserves learning today
Yep. With all of the PL research that has gone into Zig, Nim, Rust, and others, one would really hope that greenfield projects would be written in not-C. Of course, when does anyone really get the luxury of writing something completely from scratch--especially with low-level systems? Maybe someday!
_nhynes··on The Energy Cost of Electric and Human-Powered Bicycles (2004) [pdf]
human: 1.2 (0.9) kcal/floor ascending (descending) [0, 1] elevator: 2.5 W•h/floor [2, 3]

Let's assume 15 floors since otherwise you'd probably save time walking.

The article suggests a grid efficiency of 50% and a motor efficiency of electric e-bike motors as 75%. It looks like elevator motors are actually more efficient (increasingly so as more people are loaded) [4]. It's only about 5 percentage points higher, so for simplicity let's keep 75%.

Ignoring the transportation and manufacture cost of the elevator assembly (not totally unreasonable since it has a long lifetime), elevators have an energy ratio of 2.5:6.7 or 1:2.7, which looks far better than the 1:28 that the article quotes for humans.

Gee, that kind of upends my worldview... I guess I'll just wait until bodies are deprecated in favor of high-efficiency cybernetics.

[0] https://captaincalculator.com/health/calorie/calories-burned...

[1] https://www.livestrong.com/article/301539-calories-burned-cl...

[2] https://www.quora.com/How-much-electricity-does-an-elevator-...

[3] https://fatknowledge.blogspot.com/2007/02/how-much-energy-do...

[4] https://www.me.ua.edu/me416/LECTURE%20MATERIALS/MotorEffic&P...

_nhynes··on Fuchsia Developers Website
It doesn't seem to work in Chromium.
_nhynes··on Project Oak – Meaningful control of data in distributed systems
Right, except for the part where it's been patched by a microcode update [0]. You can always choose not to provision enclaves with secrets unless the CPU has SMT disabled.

[0] https://www.intel.com/content/www/us/en/security-center/advi...

_nhynes··on I’m not saving ninety percent of my income for myself
> What's the plan?

I have a morbid, but sneaking suspicion that that it's the latter half of "live fast, die young." Maybe I'm just projecting, though ;)

_nhynes··on Apple Selling a Mac Monitor Stand for $999
This is a wonderfully unsubstantive article.
_nhynes··on Essential Rust Tools
To add to the list, my favorites are:

* cargo-expand [0]: dumps the expansion of troublesome macros

* cargo-bloat [1]: explains why a package is so huge

* ripgrep [2]: RIP grep

* llvm-tools-preview (via [3]): the LLVM tools with which Rust was compiled (because LLVM versions sometimes don't interoperate)

[0] https://crates.io/crates/cargo-expand [1] https://crates.io/crates/cargo-bloat [2] https://crates.io/crates/ripgrep [3] https://crates.io/crates/cargo-binutils

_nhynes··on Ask HN: Who is hiring? (June 2019)
It'd be nice if there were a way to filter startups by location (e.g., all remote).
_nhynes··on 90 Days on a Carnivore Diet: Results and Insights
> keto

What? You mean keto practitioners aren't following a strict vegan diet of avocados and processed soy protein? /s

More seriously, though, in fewer than 20 years, meat substitutes will be ubiquitous and people will tend towards sun-fed burgers (if for no reason other than cost).

_nhynes··on Inductive Consensus Tree Protocol: A Scalable Blockchain [pdf]
Incredibly cool system! I'm glad to see zkSNARKS finally being used as a smart contract primitive.

Two questions for you:

1. How does performance look for private ERC20-type contracts? zkSNARKS can be rather heavy to compute, so would that affect scalability?

2. Is it possible to do cross-contract calls without knowing the recipient's private state? How does one construct a proof for a new state without knowing the original state?

_nhynes··on Compiling C to WebAssembly Without Emscripten
> C without the standard library (called “libc”) is pretty rough

If you don't want to pull in musl or a traditional libc, there's a more Wasm-y solution known as the Web Assembly System Interface (WASI) [0] that delegates the libc functionality to the runtime.

A WASI Wasm module can be compiled using clang, as in the article. The only difference is to use the WASI sysroot [1].

> optimization

LTO and -O3 are great! I've also found the Twiggy [2] tool useful for more "manual" optimization.

[0] https://wasi.dev [1] https://github.com/CraneStation/wasi-sdk/releases [2] https://rustwasm.github.io/twiggy/

_nhynes··on C:// CDN on the Bitcoin Blockchain
Neat! It'd be nice to see a comparison of cost+replication factor of C:// versus, say, Filecoin which is designed specifically for storage and allows tweaking replication factor. Or maybe even Ethereum using logs instead of storage.
_nhynes··on [dead]
Seems so: https://downforeveryoneorjustme.com/reddit But that's just the "new" reddit. https://old.reddit.com seems to be working. The new one is IMHO trash, so it's np.
_nhynes··on InNative: Run WebAssembly Outside the Sandbox at 95% Native Speed
You get a bit of safety because Wasm programs have statically validated function calls and operate only within linear memory. If there are no bugs in the stdlib or the bytecode compiler, then the host is still sandboxed from the module even without virtual memory.
_nhynes··on Calorie per Dollar List – Eat for 21 Dollars a Week
It'd be nice to see data for vegetables, too. For instance, broccoli is relatively high in protein (and definitely micronutrients), but is rather cost ineffective. It'd also be fun to see how absurdly inefficient lettuce is.

Also, soybeans are more efficient than lentils and white beans are more versatile (e.g., https://github.com/nhynes/pbean)

_nhynes··on Blockchain-Flavored WASI
> > zeroth arg > There is nothing intuitive about that for me.

It looks a lot like how a command-line program has the program name as the zeroth argument. The address just happens to be the name of the program in a blockchain context.

> exposing the blockchain interface as a module feels like it would be a significantly cleaner implementation

I'm not so sure. I think that the goal here is to allow developers to program "DApps" using their normal toolchain and abstract over the semantics of the blockchain platform. IMHO even the ideas of "block" and "chain" are implementation details in the same way as the journal of a traditional database is an implementation detail. Exposing these details as a library means that the program is tied to not only the blockchain, but a particular blockchain runtime.

> wrap that module as a library behind my own interface

That's always a good idea, but not incompatible with having a lower-level interface (in this case WASI and Rust/C++/AsmScript `std`).

← PreviousPage 5 of 5