@dpiponi@mathstodon.xyz cover

Disclaimer:
👽 My opinions are not my own. They're beamed to me by aliens

Current life:
🎮 Epic Games

Previous lives:
🍩 a PhD in Riemann theta functions
💥 many years working in movie visual effects
🎈 some years devising navigation strategies for balloons
🎲 a year drawing random samples from tricky distributions

Likes:
🚴 I like to bike
🏃 I like to run
🎛️ my musical tastes lie towards the electronic end of the spectrum
🚀 I like Andor and The Mandalorian

This profile is from a federated server and may be incomplete. View on remote instance

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

It's not like I had any chance of resisting when one of my favourite books is published in a fancy new hardback edition

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen I'll get back to you in a year or two when the Folio Society release their version. I've read Use of Weapons twice but I can't remember much about it other than that one scene.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

When I first came across Voigtländer's paper on speeding up free monads [1] and some of the methods that Hinze mentions [2] I was a bit bemused about why category theory had anything to say about program optimization. But now it seems obvious. Much of optimization is a lot like algebraic manipulation where you're rearranging while hoping to keep the value the same. But in particular, a really common optimization move is to write f(g(x)) as (fg)(x) where (fg) is somehow simpler (or more reusable than) than just applying g then f. Ie. associativity - which is one of the laws of category theory. I think this step also accounts for almost all of the computational reasons for using linear algebra. Eg. graphics pipelines make good use of this kind of associativity.

[1] https://janis-voigtlaender.eu/papers/AsymptoticImprovementOfComputationsOverFreeMonads.pdf
[2] https://www.cs.ox.ac.uk/ralf.hinze/Kan.pdf

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

Two of my favourite optimizations that are nothing other than associativity (in monoids and vectors spaces respectively):

  1. parallel prefix scan
  2. the switch from forward to reverse/adjoint mode automatic differentiation
dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen I got a bit obsessed with parallel prefix scan too after reading Danny Hillis' survey of Connection Machine techniques. Especially the parsing methods. I've noticed them resurfacing recently.

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen A simple (but useful) special case is associativity in structures generated by one element allowing repeated squaring.

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen Coincidentally I got it into my head a month ago that I want to summarize these different methods for computing Fibonacci numbers. The Binet formula isn't so distant from matrix multiplication when you consider that you can represents elements of Z[golden ratio] with matrices.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Feeling unoptimistic about the future. Most people are fascists at heart. It's far enough from WWII that the consequences of that are forgotten. And when every country is fascist, and surrounded by hostile fascist countries, it's going to get really ugly.

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@lritter The question is what fraction of people will it be fine for?

pervognsen , to random
@pervognsen@mastodon.social avatar

There's a retired couple living in my mom's apartment complex who seems to spend 12 hours every day sunbathing outside during the summer months. They did this when we were visiting last year and they're continuing the streak apparently. After you've lived in a warm climate for a while, the whole idea of sunbathing starts to seem obscene, but this is something else.

dpiponi ,
@dpiponi@mathstodon.xyz avatar

@BartWronski @pervognsen @neilhenning Living in NYC is my fantasy but I don't think it's ever going to come true. Maybe it's better to always have the fantasy and never be disappointed.

dpiponi ,
@dpiponi@mathstodon.xyz avatar

@BartWronski @pervognsen @neilhenning Having moved recently my wife is missing friends just 20-30 miles away whereas I'm a bit antisocial and could happily move thousands of miles. Things are changing though - she really wants to give up driving and now she's seen the reality of living close to rural areas she's beginning to understand why I like cities :)

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

I know I must be a uniquely weird individual because in decades of using tabbed web browsers I've still never wanted to close tabs to the right and I've often wanted to close tabs to the left.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

I hate typing practice. Seriously. I've been programming computers since before most of you were born. But I need to move on from being a two fingered typist, even if a fast one,

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen You calling it "hell" is very helpful actually! Good to know that the frustration isn't just something I'm doing wrong.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Watching Dark Matter on Apple+. I've read the book (See https://github.com/dpiponi/TextTree) and I'm enjoying the show. But it's so implausible. He turns up at a hospital confused and next scene he's getting a CT scan. As if there aren't a dozen bureaucractic hoops to jump through first.

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@lritter I I'd love to do it on a large scale, covering all the walls of a room say.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Let me tell you about my embarrassingly stupid C++ mistake so you don't have to make it:

If X is of type std::optional<T> and Y is of type T you can assign Y to X like so:

X = Y

I sort of don't like that because X and Y are different types.

You can also write

*X = Y

which works because *X is of type T&. Now the types match.

But woe is me! Don't do the latter. If X is an empty optional then *X = Y fails silently.

It's obvious when you think about it for a moment. But when you're thinking about the bigger picture you can forget about the little things.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Software is garbage. All of it. The people who write it hate you.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

I don't know if I hallucinated this but maybe someone recognises it:

I'm sure I once (~20 years ago) saw an arbitrary precision real number library for C or C++ that worked by picking some fixed precision and worked until it produced a result at the required precision, or, if it convinced itself it couldn't achieve that precision, did some kind of backtracking so it could redo the computation at a higher fixed precision. Somewhat analogously to how transactional memory works - and I think under the hood there may have been some unusual memory model.

Sound familiar to anyone?

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Annoying that the Kindle retroactively changes book covers. Such nice art for these books, except book 1 now.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Here's an animation generated by simulating the 2D wave equation kicked off with a Dirac delta pulse. Periodic boundary conditions.

But let's say we want the field value to be as high as possible at a particular point in space at a chosen future moment in time...

video/mp4

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Feeling stupid because I can't figure out how to render an animated plot using matplotlib. But neither can ChatGPT so I'm not feeling entirely stupid.

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@BartWronski I eventually got it to work but thanks for the offer

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

From Max Evry's "A Masterpiece in Disarray" on making Lynch's Dune. My question is this: what is a "human trampoline?"

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Eternally hostage to the 6 digit codes that never seem to arrive...

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

I don't know what people mean when they say LLMs don't really understand language. The only interpretation that makes sense to me is so trivial that it can't be what's intended - that LLMs aren't people. I wish people could just be normal around this technology and stick to saying sensible things about their observations without trying to weave in their religious beliefs.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Installed an IoT water flow meter but thinking it was a missed marketing opportunity for some Dune branding around the concept of water discipline.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

@dpiponi Can I write private DMs to myself or can you read this?

dpiponi OP ,
@dpiponi@mathstodon.xyz avatar

@pervognsen You got there before I could delete it!

pervognsen , to random
@pervognsen@mastodon.social avatar

What is going on here.

dpiponi ,
@dpiponi@mathstodon.xyz avatar

@pervognsen Old book, no longer in print, various editions are rated differently, and now there's an ebook which isn't rare but many still prefer to buy used on paper.

dpiponi , to random
@dpiponi@mathstodon.xyz avatar

Reading Moon is a Harsh Mistress for the first time. Best bit so far is learning a new word: dasn't. Thought it was an OCR error at first.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • tech
  • kbinEarth
  • testing
  • interstellar
  • wanderlust
  • All magazines