Susan Potter

Susan Potter

@susanpotter.net

Anti-fascist, anti-authoritarian, pro-privacy, pro-speech, investor, trader, polyglot software engineer (Haskell, Erlang, Scala, Nix, NixOS, F#) with a systems reliability and security focus. Recovering SRE. https://www.susanpotter.net/

1.4K followers277 following1.5K posts

I've spent the last year rebuilding my quant workflow. The hardest part wasn't the math. It was learning when to stop: when to kill a hypothesis. I wrote up an outline, from exploration through statistical validation to robustness testing. susanpotter.net/quant/hypothesis-to-production-toolkit/

susanpotter.netFrom Hypothesis to Production: A Quant's Productivity …Productivity in quantitative work isn’t about doing things faster. It’s about knowing when to stop. A walkthrough of the tools …

Imagine if any other country voted in someone so fucking dumb. You can't.

The Bulwark@thebulwark.com

Q: "Do you believe that God supports the United States' actions in this war?" Trump: "I do because God is good…and God wants to see people taken care of…The person who won the Nobel Prize came to me and said, you deserve the Nobel Prize."

Susan Potter reposted

“I'm not scared of a germ. I used to snort cocaine off of toilet seats.” - Robert F. Kennedy Jr, Secretary of Health and Human Services — America’s fall off from having the world’s greatest medical minds running its health services to this, needs to be studied.

A few things I have learned the last week while building an app using F#: 1. 🚨 F# won’t save you from missing pattern cases. Haskell treats non-exhaustive matches as warnings; F# treats them as a suggestion. Turn on --warnaserror+25 if you want the compiler to act like it cares.

View full thread

7. Even if you wanted to abuse Haskell's lazily evaluated lists to build infinite structures with it, you likely still used a stream library anyway for performance and ergonomics. I haven't done much with streams in F# but `seq {}` was my introduction to that so far.

A few things I have learned the last week while building an app using F#: 1. 🚨 F# won’t save you from missing pattern cases. Haskell treats non-exhaustive matches as warnings; F# treats them as a suggestion. Turn on --warnaserror+25 if you want the compiler to act like it cares.

View full thread

5. F# has no typeclasses, no coherence or instance resolution, but it does have interfaces and statically resolved type parameters which can scoot a little closer to this. #haskell wins this round.

6. F# pipelines flow left-to-right: `x |> f |> g`. Haskell hides a similar operator (`&`) in the cupboard and nobody uses it (except me), but the F# version seems more natural to me.

A few things I have learned the last week while building an app using F#: 1. 🚨 F# won’t save you from missing pattern cases. Haskell treats non-exhaustive matches as warnings; F# treats them as a suggestion. Turn on --warnaserror+25 if you want the compiler to act like it cares.

View full thread

A few things I have learned the last week while building an app using F#: 1. 🚨 F# won’t save you from missing pattern cases. Haskell treats non-exhaustive matches as warnings; F# treats them as a suggestion. Turn on --warnaserror+25 if you want the compiler to act like it cares.

2. F# gives you 'a option, which feels like Maybe. Then .NET drops null into your lap anyway. Pattern matching on null works, but it feels like you’re breaking the seal on something toxic. Not unlike Scala on JVM.

Should introducing a pervasive type as `string | undefined` that isn't just describing existing APIs in the wild in JS land be punishable by death? Asking for a friend.

Do you think MAGA believes one of Epstein's victims sat around for hours with Trump talking about tariffs in Epstein's apartment? Is that why they are so quiet today?

Susan Potter reposted

This is a blatant attempt to silence and isolate us. He’s stopping the trains, closing the freeways and firing live rounds into California. We will not be intimidated. We will not be silenced. #NoKings

“NO KINGS” is more than a slogan; it’s the foundation that the United States of America was built upon. We wouldn't be a country if the founding fathers didn't believe that. As such, the people peacefully protesting today in the streets across the country love the premise of this country. No hate.

I have never heard of the "Hate American Rally" that the Trump sycophants are talking about. However, I have heard of the #NoKings rally for this Saturday which is for Americans who believe that there should never be any absolute monarchies or dictators in the USA. Ever. Hope that clarifies.

I'm against fascism which makes me antifascist. I am not part of a terrorist organization but I'll call fascism when I see it. I see fascism in the current regime of the United States led by Trump. These are the terrorists and enemies of the people. The call is coming from inside the [White] house.

We should assume now that every tech bro who came out to say last year that Kamala Harris was a threat to democracy and Trump was the only way to save the country are fascists. They wanted a civil war and we know some believe in slavery. They have fuck-you money and they keep nodding. Incriminating.

Why is modern commercial software "engineering" filled with busywork or workarounds applied to temporary solutions instead of building software with tools and practices that allow engineers to reason about code in holistic ways? One common answer: those hiring center on shitty stacks/practices.

View full thread

Ideally, we'd all be working on small distributed teams that intentionally try to rethink their methods and processes incrementally in practice and revisit their vision with a transformative lens periodically. But so much of a working software engineer's work life is spent doing useless work now.

Why is modern commercial software "engineering" filled with busywork or workarounds applied to temporary solutions instead of building software with tools and practices that allow engineers to reason about code in holistic ways? One common answer: those hiring center on shitty stacks/practices.

It is what the people hiring know/learned and it is hard to move away from your comfort blanket. I get that, but why aren't more engineering-oriented tools more prevalent? E.g., effectful/capability-based programming environments or real spec languages for designing APIs (not OpenAPI formats), etc.

Added bookmarklet to page under the main form inputs. Drag and drop the 'Reclaim Web Search Bookmarklet' link to your bookmark bar and it always there for you. Check the code before you do it, obviously.

DHH is what techno-fascism looks like in the little leagues: A now-wealthy immigrant whose life's story embodies the promise of open societies now writes as though openness is cultural suicide. Same for Musk & Thiel. An open and accepting society made them who they are. They'd be nothing otherwise.

As a developer I do miss using capable and performant runtimes so I can focus on correctness instead. There are so many excuses made by monoglot/monoruntime developers that promote busy, error-prone work that doesn't aid the software product at all. That is all I am going to say. I miss polyglots.

Today I even had the thought, "rewriting a small number of endpoints into a true Go microservice would be better than troubleshooting this...". This is where I am at.