HNHacker News
TopNewBestAskShowJobs

eslaught

5,190 karma · joined May 19, 2011

Staff Scientist, Computer Science Research Department, SLAC National Accelerator Laboratory.

Research interests: programming languages, compilers and runtimes; parallel, distributed and high-performance computing. Feel free to contact me (see about page below) if you have interesting problems to talk about.

https://elliottslaughter.com/

Contact: https://elliottslaughter.com/about/

[ my public key: https://keybase.io/slaughter; my proof: https://keybase.io/slaughter/sigs/pfzdOL11OUYKphzUo2UqlDmZz37F1iYPq7omhhQtgjM ]

submissionscomments
eslaught··on Kickstarting a book to end enshittification, because Amazon will not carry it
My understanding is that Amazon runs imprints, like Audible Originals [1], that basically act like a publisher. I.e., they buy the rights, produce the audio, pay the voice actor, and the author gets some royalty (presumably smaller than 40%).

But my understanding is that the large publishers mostly do this themselves (and therefore have to pay the voice actor out of the 40% cut they get). Similarly, independent authors won't get access to this level of service; in some cases they're literally reading the book themselves, but they still only get the 40% cut (and that's with exclusivity).

The reason why audiobooks are cheaper is due to the subscription model. That's the chief innovation that Amazon pioneered with Audible. Now, their clout certainly also had something to do with it, and the burgeoning Kindle ecosystem. But the issue of price is really a matter of subscriptions being stickier and keeping customers in the ecosystem longer, making it possible to make aggregate more money. It's the same business model as Netflix, Dropbox, Adobe CC, etc.

[1]: https://www.audible.com/ep/audible-originals

eslaught··on Kickstarting a book to end enshittification, because Amazon will not carry it
A 40% cut makes sense in a world where Amazon pays the voice actor.

My understanding is that is not how this works. The author pays the voice actor, or the publisher does. Amazon is paying for hosting an audio file, basically, and the development of the player app, and that's it.

I think in the very early days, Amazon may have paid all the voice actors itself (because no one was on board with audio yet at that point), and the 40% royalty model may have made sense. But I believe that is not how it works now, and 40% royalties make a lot less sense in the world we now live in; it seems to be just purely predatory.

eslaught··on Ask HN: Is anyone using PyPy for real work?
We use PyPy for performing verification of our software stack [1], and also for profiling tools [2]. The verification tool is basically a complete reimplementation of our main product, and therefore encodes a massive amount of business logic (and therefore difficult to impossible to rewrite in another language). As with other users, we found the switch to PyPy was seamless and provides us with something like a 2.5x speedup out of the box, with (I think) higher speedups in some specific cases.

We eventually rewrote the profiler tool in Rust for additional speedups, but as mentioned for the verification engine, it's probably too complicated to ever do that so we really appreciate drop-in tools like PyPy that can speed up our code.

[1]: https://github.com/StanfordLegion/legion/blob/master/tools/l...

[2]: https://github.com/StanfordLegion/legion/blob/master/tools/l...

eslaught··on Why don't we get our drinking water by taking salt out seawater? (2008)
If I built an ocean base 231 meters below the surface, does that mean I'd get free fresh water by sticking a membrane on the outside of my base? (Ignoring the impracticality of building an underwater base, of course.)

Sounds like a cool sci-fi premise.

eslaught··on Miyazaki has used the art of animation to study the major problem of adult life
Really?

https://en.wikipedia.org/wiki/American_Civil_War

eslaught··on Minotaur: A SIMD-oriented synthesizing superoptimizer
You're exactly right:

https://theory.stanford.edu/~aiken/publications/papers/asplo...

eslaught··on Tuition costs have risen 710% since 1983
This is a common theme on HN, but it's not obvious to me if it reflects this entire period we're talking about here. Were government loans growing from 1980 to 2000? I know they have been in the last 20 years, but tuition was clearly growing before that (as you can see for yourself in the graphs of the original article).
eslaught··on PhD Simulator
I know people who quit and were glad that they did so. I know people who graduated, but with the realization that research wasn't for them, and they pivoted into something else. But I honestly can't think of anyone who stuck through it and was worse off afterwards.
eslaught··on Ask HN: Could you share your personal blog here?
https://elliottslaughter.com/

An eclectic combination of a long-running (but infrequent) blog, technical projects, and academic papers.

eslaught··on AI and the Automation of Work
The original article gets into this at the end. It's easy to get into a cyclic argument here, where you posit a tool that can do "anything" and then try to derive consequences from that. What we don't know is what its actual capabilities will be, or how transformative those will be.

There's a prayer about knowing the difference between what you can do and what you can't, and setting aside the things you can't do to focus on what you can. To me, this seems like the right way to approach this.

eslaught··on Beyond Markdown (2018)
After the controversy over naming CommonMark (where @jgm et al. caught flak over originally trying to name it Standard Markdown), I'm not surprised that he picked something totally unrelated. And really, it's not Markdown at all at this point, so being more clearly differentiated from Markdown / CommonMark seems like a plus to me.
eslaught··on Beyond Markdown (2018)
Needs a 2018 in the title.

He actually implemented these ideas: https://djot.net/

eslaught··on AMD EPYC 97x4 “Bergamo” CPUs: 128 Zen 4c CPU Cores for Servers, Shipping Now
Did you ever try to use the Xeon Phi? It was hideous to optimize for.

The cores were in order. If you've never written code for in order cores, you may not appreciate exactly how heavily you're leaning on out of order to save your bacon. Things your used to just working suddenly don't.

The cores had a 2D layout, but Intel refused to tell you what it was and in practice it was impossible to optimize for. You ended up with variable (as in different on every node) latency for memory access that made programming again painful (and add this to the fact the cores are in order, so you really can't work around the latency).

Then there was the software stack that was just odd in some ways. I was researching I/O throughout, and things that just work on any other CPU (on any modern ISA) just didn't behave in a sane way.

So yeah, I was not at all sad when Intel cancelled it.

eslaught··on Millions of GitHub repos likely vulnerable to RepoJacking, researchers say
Yes:

https://api.github.com/users/<userhandle>

From:

https://github.com/NixOS/nixpkgs/blob/master/maintainers/mai...

eslaught··on Making C++ safe without borrow checking, reference counting, or tracing GC
I feel like D has gone this route of incrementally adding features (like borrow checking) to the language that, in principle, improve safety.

I wonder if anyone here has more experience to know how well it has worked?

One massive advantage of Rust is that they started with borrow checking from the beginning. I think one thing that often gets understated in these discussions is how much it matters to have your entire ecosystem using a set of safe abstractions. This is a major drag for C++, and I suspect that even if the language went a route like D they'd still have gaping safety holes in practical, everyday usage.

eslaught··on Apple Virtualization Framework
It's kind of wild that Apple provides code samples you can use to directly create your own VMs. Has ended up being the most straightforward way to run virtualized macOS on a macOS host that I've found, and comes with the nice benefit that your can read the code yourself and fiddle with the knobs.

https://developer.apple.com/documentation/virtualization/run...

eslaught··on AI Is Catapulting Nvidia Toward the $1 Trillion Club
Drivers are only the lowest level of the stack. You could (in principle) have a great driver ecosystem and a nonexistent user-level ecosystem. And indeed, the user-level ecosystem on AMD and Intel seems to be suffering.

For example, I recently went looking into Numba for AMD GPUs. The answer was basically, "it doesn't exist". There was a version, it got deprecated (and removed), and the replacement never took off. AMD doesn't appear to be investing in it (as far as anyone can tell from an outsider's perspective). So now I've got a code that won't work on AMD GPUs, even though in principle the abstractions are perfectly suited to this sort of cross-GPU-vendor portability.

NVIDIA is years ahead not just in CUDA, but in terms of all the other libraries built on top. Unless I'm building directly on the lowest levels of abstraction (CUDA/HIP/Kokkos/etc. and BLAS, basically), chances are the things I want will exist for NVIDIA but not for the others. Without a significant and sustained ecosystem push, that's just not going to change quickly.

eslaught··on Ask HN: How do you not take criticism of your work personally?
There is a legitimate difference between accurate, honest advice that is hard to swallow, and being harsh, rude or mean. For some reason that I don't fully understand, some corners of the programming world seem to conflate the latter with the former (sometimes under the guise of "brutal honesty").

Sometimes you won't have a choice and you just have to put up with it. But my advice, in so far as possible, is to surround yourself with people who understand this nuance and for whom it is a goal to be compassionate (while still being honest and truthful about problems that exist).

I just wanted to mention it because some of the advice in this thread doesn't seem to make this explicit. Improving yourself is great, but life is too short to put up with jerks.

eslaught··on Saturn reclaims 'moon king' title from Jupiter with 62 newfound satellites
Can someone explain to me how we're only discovering these moons in 2023? Do we really not have sensitive enough instruments to see rocks over a mile in diameter in our own solar system?
eslaught··on Artists must be allowed to make bad work
I basically quit writing when I was 12 because of this. I really wish I hadn't, it took another 10 years to get the ball rolling on that again (and from there about 10 years to actually get good enough to like what I was writing). I could have been writing good stuff in my 20s instead of my 30s if I'd stuck with it.
eslaught··on The Legend of Zelda: Tears of the Kingdom Release
I did watch The Clone Wars (note this is the 2008 TV series, not the 2003 one). The last season (especially the finale) was amazing, up there with Andor for best Star Wars content of all time. But watching the rest of it to get to that point was honestly a slog, and plenty of the shows are gag-worthy or at least blah. It's bad enough I can't recommend it to friends, but I've been trying to think about whether there's a minimal subset of shows I can recommend watching to give enough of the experience that you can appreciate that finale without needing to suffer through the rest of it.

Andor comes with the distinct advantage that you don't have to slog through hours of questionable content to get to the good stuff.

eslaught··on The Legend of Zelda: Tears of the Kingdom Release
I loved Star Wars as a kid. Then the prequels made me jaded that there could ever be anything as good as the originals. The sequels and other content did nothing to dissuade me from this. Then Andor showed up and it's like, holy cow, this is actually good.

Sometimes when the follow-on content is bad... it's because the follow-on content is bad.

eslaught··on Faster CPython at PyCon, part one
You can get on the order of 10-30x speedup over NumPy by reducing the allocation of temporaries and fusing across operations. See:

Weld: A Common Runtime for High Performance Data Analytics

https://dspace.mit.edu/bitstream/handle/1721.1/137425/cidr_w...

eslaught··on Are sockets the wave of the future? (1990)
Can someone talk about what this "auth" library is that djb talks about? What is its security model?

As best I can tell, it doesn't protect from MITM attacks. If so, I'm confused about what the point is.

eslaught··on Googlers angry about CEO’s $226M pay after cuts in perks and 12,000 layoffs
There's a straightforward (if not necessarily easy) way to test this hypothesis. Go look at founders and see what fraction are engineers vs project managers vs sales/marketing/business/etc. in their previous careers. Then go look at who is successful and how their success is positively or negatively impacted by their experience.

I haven't run the numbers but I have the impression that "idea people" tend to flounder without a strong technical co-founder. In contrast, technical co-founders can make it on their own, though there may certainly be challenges in doing so. Those roles are also very different in terms of what you can hire in as early employees vs what absolutely has to be a part of the founding team.

Almost everything in a big organization is a team effort, but that doesn't mean you can't tease out the relative contributions of the different parts. And I think you're undervaluing the engineering contribution substantially.

eslaught··on ‘Star Trek’ Fans Can Now Virtually Tour Every Starship Enterprise Bridge
"A little while" as in how long?

Re: the sibling comment, I had to switch the Chrome to see the button, but I don't know how patient I need to be, or what the interface is supposed to look like once it's ready.

Edit: ok, took a couple of minutes. That is way more awesome than the initial demo. The map even includes the ready room and conference room of the Enterprise D.

eslaught··on ‘Star Trek’ Fans Can Now Virtually Tour Every Starship Enterprise Bridge
Are there no controls to walk around?
eslaught··on The Difference Between European and American Butter
Based on the comments in this thread I went today and bought Kerrygold (salted sweat cream butter) and ran a taste test against generic Kirkland. (I'm in the US so this is US butter.) I ate each one directly, by itself.

Maybe I'm an uncultured barbarian, but... the difference is not nearly as large as the comments here seem to suggest. I can taste the difference, but I have to think about it. And the difference honestly seems small enough that I'm not sure I'd successfully distinguish them in a blind test.

Am I missing something?

eslaught··on Emerging Rust GUI libraries in a WASM world
If you build an equivalent tech demo in HTML Canvas, I'd be curious to see how it performs. I'm sure you're aware that, just because Canvas layers on top of WebGL/GPU draw calls, doesn't necessarily mean it's performant in the way I need it to be. There are many ways for performance to degrade across abstraction layers, even if in principle it shouldn't.

I didn't test Canvas specifically in my explorations, but I did test a few JavaScript based frameworks, and the ones I found that were efficient sat on top of WebGL, not Canvas. Ultimately I didn't pick those because they had a bunch of other stuff baked in that I didn't need or want, and were already equally non-native (sitting on top of WebGL). And I frankly didn't want to be writing JavaScript.

eslaught··on Emerging Rust GUI libraries in a WASM world
Like I said in my top comment, it's a profiler. I need to consume logs from distributed applications (on possibly tens of thousands of nodes) and render them in as coherent a fashion as possible.

Going to 3d rendering via OpenGL / WebGL was one of the options I considered. But honestly, this is a boatload of complexity. Why do I need to pick up a full 3D rendering library just to draw rectangles on the screen? Plus, consider: the slot viewer (where the rectangles are shown) still needs to draw some UI components (e.g., on hoverover). I still need that UI integration there, even if it's not as performance-sensitive. So I end up needing something along the lines of egui anyway.

I definitely understand that not all UI libraries are going to be optimized for this. But I was surprised that it wasn't easy to e.g. get a high-performance canvas dropped into libraries that specifically advertised themselves as high-performance.

← PreviousPage 6 of 30Next →