HNHacker News
TopNewBestAskShowJobs

pnathan

11,776 karma · joined January 28, 2011

Hi!

Some facts:

- Living and working in Spokane, WA (formerly Seattle )

- Write code, talk to people

- I sit at the intersection of SRE and SWE.

- Email: paul@nathan.house

Please feel 100% free to email me out of the blue. I really do love meeting new people, and try to respond to everyone I can - if I didn't respond, it's not because I didn't want the email, it's because I'm swamped.

- I usually take 1-3 days to respond to comments. This is conscious - deliberation and a cool head gives an immediate thinking bonus.

Some other notes:

- http://articulate-lisp.com Common Lisp for new users!

- I've been programming since the mid-90s

- Has grad degree, M.S. in Computer Science.

- PL geek: experiences in... assemblies, bash, c++, c#, common lisp, golang, haskell, java, objective c, ocaml, perl, prolog, python, rust, scala

- Portfolio/open source work: https://github.com/pnathan

---

[ my public key: https://keybase.io/pnathan; my proof: https://keybase.io/pnathan/sigs/thq2TfZ0ss836xvC6arGWYCzkZAjXYoRVrljegtzf2s ]

submissionscomments
pnathan··on Dystopian tales of that time when I sold out to Google
This isn't how people really are.

People have different presentations for different social contexts. That's typical and normal. For a working example, the social context of the marital bedroom is not the social context of the city playground where you mind your kids. Differences in clothing, actions, words.

This spans into most areas of life.

You don't have to sterilize your work life - but you do have to have _boundaries_.

pnathan··on Dystopian tales of that time when I sold out to Google
I was a teen in the 90s, in my circles it was Understood that the data was not private.

Some of this in any case sounds like the usual "did not grow up in white collar society, got white collar job, got in trouble for violating white collar norms" that class-changers go through. Lots of !!fun!!.

I too get troubled when the operations staff get "invisible'd" - they are members of society too and should be treated with dignity. But in a tolerably decent situation, they are recognized and respected in their field as well. Even if its the evening shift to do the janitorial work. There's nothing _immoral_ about having a party and hiring some people to clean up. It's treating them as _lower_ than you that is the failure.

Anyway. There's an - as far as I know - as yet unwritten story around those of us who came from non-white collar backgrounds and found this new world confusing.

pnathan··on Ground control to Major Trial
If it was me, I'd have- at the least - a little routine in the trial-signup logic on the backend which would check the company name and known aliases, and return "not eligible for free, but sales would love to talk! Have a nice day!" message.
pnathan··on US vs. Google amicus curiae brief of Y Combinator in support of plaintiffs [pdf]
Apple user software is legitimately awful in a systematic way. Although I like the Chess app. :)

Google, interestingly, is much better.

I don't know what to say. It's clear that the Internet Ecosystem has a megafauna of Google and taking it out would be an ecosystem collapse, but the other Megafauna are... worse.

pnathan··on The Death of Daydreaming
I would absolutely go landline if I had the option of doing so due to work.
pnathan··on Migrating away from Rust
This confused me as well. The scripting / engine divide is old and long standing.
pnathan··on What do I think about Lua after shipping a project with 60k lines of code?
Since Python type checking is functionally optional, it implies that somewhere, somehow, someone has opted out, or has used a type checker that differs subtly but unpleasantly from the one you're using. Python's type checker systems are fundamentally a _linter_ more than something like Java or C...or Rust.

It's not about feeling. It's about the theorems you can make about the codebase. With Python the answer actually is ¯\_(ツ)_/¯.

pnathan··on What do I think about Lua after shipping a project with 60k lines of code?
I need to spend some quality time with Coalton. I don't think it's _quite_ what I want, but its in the same key.
pnathan··on What do I think about Lua after shipping a project with 60k lines of code?
Agreed. I had to work in a larger Python codebase after spending a few years with Go and Rust and the drop in logical confidence around the language was remarkable.

I have, roughly, sworn off dynamic languages at this point. Although I have dreams of implementing a firm typed system over Common Lisp.

pnathan··on [dead]
Having grown up on histories and stories from the first half of the 20thC, this headline is unreal to see.
pnathan··on Canon EF and RF Lenses – All Autofocus Motors
Tolerably modern Nikon lenses have in-lens AF I believe.
pnathan··on The Generative AI Con
Directionally correct.

GenAI is - imo - an assistant. Copilot does effectively templating.

I can have ChatGPT read an email and check it for tone.

Claude can comment on camera kit.

Claude does a very nice image recognition for obscure things.

What I have become persuaded of is that the /completions API is simply not much more than +10% or a low key helper.

I do not need a dumber-than-intern agent going ape on my codebase at speed, which is, approximately, what the codegen tools seem to do.

I saw a self driving car startup using a GPT neural network to recognize images during driving. I would assess that class of use as plausibly very promising.

I would also hazard that Shirkys BS jobs thesis is being proved true, because if a hallucinating ai can do it...

Anyway.

I don't think the fundamentals justify the spend. I think there's too much vitriol, but there's also too much hype & by a country mile too.

pnathan··on Teen on Musk's DOGE team graduated from 'The Com'
This is always in my mind. Whatever we choose to let the ruler du jour do, what would, let us say, the $hitler be able to do when they come to power through the mischoices of our fellow citizens? After all, history tells us that such people will both exist and come to power.

So it behooves us to be a little jealous of our own rights, and to push officials to limit other officials.

There's an interesting fork here where you can argue for a very libertarian view, _or_ you can argue for a "government whose interest is in restraining government (the metagame of 'checks and balances')".

pnathan··on Ask HN: What is interviewing like now with everyone using AI?
Screen share or in person are what I think the best ways are. These are not the best options.

I do not want AI. The human is the value add.

I understand that people won't feel super comfortable with this, and I try not to roast the candidate with leetcode. It should be a conversation where I surface technical reality and understanding.

pnathan··on Rust’s worst feature
Have you ever used Common Lisp macros? Its absolutely eye poppingly easier.
pnathan··on Rust’s worst feature
I think the answer is that in a case when you need that speed, you hoist the stack allocation & zeroing and unsafe that buffer in the loop if need be. Test well. I am a huge Rust fan but also it is actually possible to write correct unsafe code.

If I am interacting with from IO space, I would much rather write the interaction code myself for the machine at hand than farm it out to an array of third party crates. ::shrug::

getting the machinery to let it properly be hoisted smoothly and safely would be nice, but it isn't required.

personally I think rust macros are very painful and the "worst feature", but that's speaking as someone who did a fair bit of Common Lisp.

pnathan··on I'll think twice before using GitHub Actions again
I have moved to this.

CI works _fantastic_. Absolute top-notch.

Then I have to sort out deployment...

pnathan··on Formal Methods: Just Good Engineering Practice? (2024)
What's your recommendation on how to rapidly learn TLA+? I spent some time staring at references and the UI a few months ago and came away very defeated. But I'd like to actually level up here.
pnathan··on I got OpenTelemetry to work. But why was it so complicated?
I spent altogether too much time trying to get the Rust otel libs working in a useful and concise way. After a few hours I junked it and went back to a direct use of a jaeger client sending off to the otel collector.

there's some gold here, but most of it is over in the consultant/vendor space today, I fear.

pnathan··on Time-Series Anomaly Detection: A Decade Review
The number of manual tweaks required to the approach suggest that it is essentially an ad hoc experimental fitting, rather than a stable theoretical model that can adapt to your time series.
pnathan··on Guide to mechanical keyboards
Yeah I looked at that design, but I wanted the palm rests and contours. I don't particularly _want_ an infinitely programmable KB - just enough to have stability.
pnathan··on Guide to mechanical keyboards
I am at the keyboard 40-80hr per week.

I want a keyboard that is ergonomic and pleasant to use.

pnathan··on Guide to mechanical keyboards
My thoughts, as someone who focuses on tools a lot -

Ergonomic is a must. Anything not ergonomic should be gently removed from your approach.

Mechanical is nice, but relates to how your personal interaction with your tools is. I use Cherry Blue or similar. I personally want to feel that click. I also learned to type on a 1940s Royal typewriter. Cherry Red aka Linear feels awful. Connect any dots you like there.

TKL designs with f keys and arrows are ideal for emacs users imo. Anything less feels either for non programmers or for people who use keychords a good deal less. The really cranked down designs seem more for writers than coders- special characters are in layers.

I have used Kinesis keyboards for a few years now. Their Edge RGB is _very_ nice. After an RSI episode earlier this year, I moved to an Advantage 360 SmartSet. I consider their SmartSet system to be ideal in terms of a very good meet point of configurability, ease of use, and reliability.

Re the 360, I am not as convinced of the Ortho layout or lack of f-keys. The thumb keys work well.

I would recommend Kinesis as a professional keyboard vendor.

In any case, this becomes a personal geometry problem where your hands, arms, shoulders will all combine to make a physical keyboard better or worse. This is further fit +/- by the tools we use. So it's very individual. Hope my experience shared here help someone.

pnathan··on Show HN: Zyme – An Evolvable Programming Language
Heckendorn and Soule were the key profs in the research in the area. One other maybe?. Soule in particular. In 04 I was doing some undergrad research around training neural networks with particle swarms.

  I wandered off to do this Lisp on my own, inspired by the code-is-data concept of Lisp. This work is strictly toy, to self demonstrate the possibility. Wouldn't mind revisiting it sometime to bring in the top of the academic art. But I am not affiliated with a U, so publishing would be a challenge.
pnathan··on Show HN: Zyme – An Evolvable Programming Language
15 or so years ago now - before I worked professionally really - I worked with Common Lisp to create a little toy tool to build, essentially, ASTs and evolve them to achieve a given fitness function. It was a heavily studied topic in the 1995-2005 timeframe at my alma mater. I just uploaded it ( https://github.com/pnathan/z-system ) as an amusing bit.

I'd be curious if the OP has looked at the literature on evolutionary programs (not evo algos, but programs).

pnathan··on Ask HN: How to deal with a serious mental health breakdown?
This reads, lightly, like a clinical psychosis situation, presenting a kind of mania with delusion. It can have different diagnoses, of course. As I understand it, there is _almost nothing_ short of medications that will deescalate it. There are people who manage their reality breaks successfully without.

Calling the professionals is 100% the right thing to do. I would also move unless you and he commit to you being a live-in psych nurse. I don't recommend it. I would not break contact, but this is a sharp gap in shared reality that is going to be very dicey to live in the same space next to.

I have lived with a family member with very serious mental illness, and it is no joke. I do not recommend without a major personal commitment.

pnathan··on Why systemd is a problem for embedded Linux
I can only say that the obvious answer here is to throw effort into supporting & improving Gentoo.
pnathan··on GitHub cuts AI deals with Google, Anthropic
In general I do not find AI a net positive. Other tools seem to do at least as well in general.

it can be used if you want the reliability of a random forum poster. which... sure. knock yourself out. sometimes there's gems in that dirt.

I'm getting _very_ bearish on using LLMs for things that aren't pattern recognition.

pnathan··on Mill: A fast JVM build tool for Java and Scala
I've used mill for some Scala projects in the past and I give it 5/5.
pnathan··on Rider is now free for non-commercial use
Might as well use emacs at that point. :)
← PreviousPage 3 of 34Next →