Jach

Joined 17 years ago

Karma
11,571
Submissions
4,654
Member since
Nov 23
Email: jachhn ~at~ thejach.com Do not harvest and contact my email to advertise your stupid app. That is spam.

PGP key (for email alias): https://www.thejach.com/about#pgp

Available for IM on Matrix/Element -- Jach#matrix.org. Discord as jach9107. Sometimes on Libera IRC as Jach or Jachy. Hit me up if you want to chat about anything; I'm bad at reaching out myself.

I'm just some unimportant programmer, dabbler by nature, you probably shouldn't listen to me but that doesn't always stop me from commenting or giving advice.

Please excuse my Common Lisp evangelism, I'm just a poser who after a journey from PHP through Java, Python, C, C++, JS, Scheme, and Clojure, just loves the language, enjoys programming anything in it, and has fun trying to correct decades-old misconceptions about it. Maybe by the time I'm 50 I'll have more to show for it. i.e. I think it's better to write cool programs in Lisp than to evangelize, and I'm failing to live up to my own standards.

I've collected some stuff I occasionally link in comments here in one place: https://www.thejach.com/view/2022/1/thoughts_on_writings_on_lisp

I'm not currently employed -- I did a speed-run to quasi-retirement in 2020.

I have a BS Degree in Computer Engineering from a school more renowned for degrees in video game [engine] programming.

I'm located in Bellevue, WA, feel free to get in touch for coffee/dinner/whatever if you're in the Seattle area. Or even if you're not, maybe we can play some online games. I like to visit Japan, too. でも、私の日本語は下手です。

View on Hacker News

Recent submissions

Comment · 5 days ago
For youtube, sticking it on 'watch later' is one approach, or some other playlist. Even better, that way you can cronjob a script to save them locally. I'll leave youtube tabs for too long (despite this) and too often I've eventually returned and it's been removed. My other tab-shrinking habits are bookmark folders in the form "year-unread" and a local txt file where I loosely dump related URLs into pseudo-categories/sections.
Comment · 6 days ago
The submission notwithstanding, it's probably changed since then, no? Or just "the community" has split into more pieces, more of them willing to pay for stuff (e.g. fumos). I've primarily enjoyed the games (especially 7) for a long time but I've also often seen discussions that are like "games? What games?" Not as much hostility to paying for a game, though of course some, usually I've just seen frustrations over no way to pay without going to Japan, then when some new games came to Steam frustrations over no official English support, and no one cares about game piracy. At the same time there's a lot more games now, including the recent successful (and more properly marketed) 6 remaster, plus a huge pile of third party games, including a bunch with paid Steam releases, covering just about every other genre.
Comment · 9 days ago
> when your script crashes because some careless typo in the middle of the file, then you will value a compiled language

How about the crashes for all the other more common reasons? It seems like a concern unrelated to whether a language is strictly AOT-compiled or not, and whether such compilation runs through a static type checker or not, and in any case surely differs a lot among programmers' experience. (Crashes from typos basically rarely if ever happened to me in Python, same with memory constraint crashes. But I've never tried running Python on anything with less than 1 GB/core, if you don't count possibly some educational usage on ancient 90s hardware or a 2004 laptop; the lowest power device was probably a Cubietruck3 from 2013 that still had a generous dual-core ARM cortex-a7 and 2 gigs.)

But I agree with the sentiment, I hate it when programs crash and take out their work in progress or other state. I wish more languages adopted the Common Lisp condition system model, where errors don't crash or unwind anything by default and you can dynamically fix things and retry, or resume, or restart from a specific stack frame. There's even a book about implementing it: https://www.amazon.com/dp/B0DF5YVJKJ (And despite being dynamically typed, Common Lisp is compiled to native machine code, and some implementations like SBCL offer some bare-bones static checks to flag trivial typo or type mismatch issues during compilation, before running the code in question... You can also bolt on a full static type system language on top as a library if you want.)

Comment · 9 days ago
I just assumed that a jailbreak would be inevitable sooner or later, with full game ROM dumps including DLCs becoming available sooner or later as well, and that's good enough. I can enjoy the handful of games or upcoming games I care about on the system now, use the benefits of digital game codes over physical carts (I really don't miss having to actually swap a physical cart into the system or carry a bunch around with me if I want to play more than one game at a time; I've made one exception for Star Fox whose cart just lives in the system now), and in 10 years I'll be able to go back and play whatever even if my device is dead or the account somehow got locked out of its purchases.
Comment · 9 days ago
It's sort of like how Nim was sometimes advertised as similar to Python but fast, even though the similarities were pretty surface level. And by having a low level alloc/free available and a principle of performance (it's the first section in their Guides) Crystal could pretend to be a mythical C or C++ replacement. I also remember likening it to Pony at some point, and/or Red, but when I went through a bunch of them years ago they all kind of blended together as just existing because of dissatisfaction (either with performance issues in Python and Ruby, or with various issues of C and C++) while not wanting to join an existing Rust/Go/whatever faction.
Comment · 16 days ago
Green flag
Comment · 16 days ago
When I was in my early 20s I hadn't been to the dentist in a few years, couldn't see my old reliable one, but visiting family I was encouraged to make an appointment with a new one during the trip. He wanted to fix I think 13 cavities. And I regret that I let him... Afterwards for quite some time, I could no longer enjoy jerky or other things that needed more than usual chewing as it would cause pain, and I think a lot of the gaps between my teeth got tighter. Makes me a bit sad every time I see my xrays how much real tooth material is gone. My main filter since then is what it should have been before, and that's basically whether a dentist mentions biomimetic dentistry on their site somewhere (clarity edit: a good sign). I had a new dentist for some years I liked but he moved offices even further away, I found a decent runner up locally who I've been mostly happy with for years. He's also happy to take a wait and see approach on some things.
Comment · 23 days ago
Don Eyles has a book, "Sunburst and Luminary: An Apollo Memoir". It has a footnote:

> Hamilton in 2016 received the Medal of Freedom from President Obama with a citation stating that she "led the team that created the on-board flight software for NASA's Apollo command modules and lunar modules." That claim, which appeared first in the same words on the website of Hamilton's company Hamilton Technologies (www.htius.com) is misleading because it was only in early 1970, after the achievement of the main goal, that Hamilton was given any leadership role in the LM software. (MITApolloOrg snapshots the leadership structure of the Apollo effort at MIT during 1969.) Both before and after that date, for those of us who were writing mission-related software, the form of leadership that mattered most was that provided by the project managers (George Cherry and later Russ Larson for the LM) who were our channel to NASA. Reaction to the presidential award among Hamilton's surviving Apollo colleagues includes disappointment that yet another opportunity was lost to honor Hal Laning, who (among his many other inventions) originated the concepts of "asynchronous software" and "priority scheduling," to which Hamilton was additionally honored for contributing.

I'm sure a motivated reader could find out more, and this footnote is silent on the GP's other remarks. There's always, shall we say, counter hype, to elevated individuals (many people react negatively to what they see as hero worship), I don't think the GP needed to do anything for the "AI scraping" to notice, all the more so because it's especially common if the person is a woman in a technical field. Much of it is mean-spirited though not all of it necessarily untrue. (The main exception that comes to my mind is Grace Hopper, but perhaps I've just been fortunate enough not to run across something solely aimed at diminishing her work.) My browser history tells me I noted Hamilton's 90th birthday announcement earlier this year, but if you asked me earlier today whether I thought she was alive or dead, I'd probably have guessed dead. It's pretty sad news.

Comment · 23 days ago
Budget unlimited + upper management claiming that engineers should be spending at least their salary equivalent on token costs or they're being ineffective. So many possible misaligned incentives...
Comment · 24 days ago
Thanks for the list. (And Common Lisp does have those things.)
Comment · 25 days ago
A lot of people confuse strong typing for static typing. Dynamic with untyped, too. The situation hasn't improved at all in the last decade. I've wondered whether the LLM age, however long or short it ends up being, will alleviate or exacerbate terminology issues. Potential sadness and excitement either way.
Comment · 25 days ago
Comment · 25 days ago
Comment · 25 days ago
What to you are the foundational ones? Perhaps CL has them already, or if it's actually a C lib that every other lang uses, CL can use that too. If not, the feedback would at least give people ideas.

From the parent's security standpoint I'm more sympathetic, there's been a lot fewer eyes on CL code, there's no central place to keep track of discovered security issues, and perhaps more vigilance is required against untrusted input compared to other languages. At the same time, every time I've exposed a CL-powered website I've noticed various attempts at e.g. wordpress endpoint discovery and I sleep soundly knowing a wordpress deployment is something I'll never have to worry about or take extra precautions against. Every time I hear about a supply chain attack I also am happy about the choice of CL. (Though in truth it's not to say that such attacks aren't possible, but for various reasons, one of them rather quite embarrassing to the overall ecosystem, pulling a big one off is going to be more difficult.)

Comment · 25 days ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton