HNHacker News
TopNewBestAskShowJobs

dfan

2,004 karma · joined March 17, 2010

I first worked at Blue Sky Productions aka Looking Glass Technologies aka Looking Glass Studios, and coded/designed/wrote/composed for some of their early games, most notably Ultima Underworld.

Then I joined Harmonix Music Systems, where I did code and game design on a bunch of music games, including Guitar Hero and Rock Band.

Most recently I did machine learning research in the Algorithmic Systems Group at Analog Garage, a division of Analog Devices.

submissionscomments
dfan··on Evaluating LLMs playing text adventures
Ha, I didn't realize that I was replying to the person who wrote the post!

The audience I had in mind when writing it was people who were already quite experienced in playing interactive fiction and could then be challenged in a new way while bringing their old skills to bear. So it's sort of a second-level game in that respect (so is 9:05, in different ways, as someone else mentioned).

dfan··on Evaluating LLMs playing text adventures
As the author of For A Change, I am astonished that anyone would think it was a good testbed for an LLM text adventure solver. It's fun that they tried, though.
dfan··on Richard Sutton and Andrew Barto Win 2024 Turing Award
The paragraph on Go AI looked accurate to me. Go AI research spent decades trying to incorporate human-written rules about tactics and strategy. None of that is used any more, although human knowledge is leveraged a bit in the strongest programs when choosing useful features to feed into the neural nets. (Strong) Go AIs are not trained on human games anymore. Indeed they don't search the entire sample space when they perform MCTS, but I don't see Sutton claiming that they do.
dfan··on Brood War Korean Translations
Even when Google Translate got pretty good I was not really able to effectively translate Chinese or Japanese text about Go (the game). I had similar issues to the ones mentioned in this post. Many Chinese and Japanese words (e.g., "ko") have a very specific meaning in the context of Go, but they also have regular meanings (e.g., "robbery") in more normal contexts, so Google Translate would translate text in a generic way, which made everything unintelligible. With modern LLMs, I can now preface my translation requests with instructions such as "I am going to ask you to translate some Chinese text accompanying weiqi diagrams. Your translations should be idiomatic and not shy away from Go jargon. For example, 拆 = extension, 夹 = pincer, 刺 and 觑 = peep.", and it does a fantastic job, enough for me to basically read anything I want. It was lucky for me that evidently enough Go material already existed in the training set that I didn't have to do anything more special.

(Some chess corrections, in case the author is reading: the moves at the start of chess games are called openings in English, not openers; there are not distinct white-piece and black-piece openings, although of course an individual player will probably study a given opening from the point of view of one side or the other; their study is considered fundamental all the way up to the highest level, in fact more so as you increase in skill; and the Sicilian variation in question is the Najdorf, not Najdork.)

dfan··on Learn perfect pitch in 15 years
I agree with all of the above, including the hypothesis that the OP likely had absolute pitch to some degree as a child and not thought about it. Everyone I personally know with perfect pitch (including myself) started engaging with music seriously very early on in life. (I don't know quickly I acquired it because it's always been as easy as identifying colors and I didn't know it was unusual until my piano teacher noticed.)

For me piano is definitely the easiest instrument to identify, I'm sure largely because it's what I've played all my life. Pipe organs are the worst. I assume that in general the purity of the tone correlates negatively with ease of identification.

dfan··on An oral history of "We Built This City," the worst song of all time (2016)
The Letterman bit must have been parodying Mummenschanz, an avant-garde Swiss theater group that was pretty popular (as those things go) at the time. They do feel a bit in the same corner of the arts universe as the Residents...
dfan··on The Composer Has No Clothes
Another recent discovery of plagiarism in the classical music world: https://www.unsungcomposers.com/forum/index.php/topic,6910.0...

(No one has written up an article about Franke to my knowledge, so if you're curious you'll have to read through the thread. It's interesting to see the investigation occur in real time, though.)

dfan··on What happens in a mind that can't 'see' mental images
The thing that finally made me very confident that I had aphantasia (back in 1998, before it was A Thing) is that I realized that my ability to "hallucinate" sounds is excellent. I can re-hear songs in my head, I can compose music and hear it as I think about it, I can hear my friends and family talking with their particular cadences and accents. I can't do anything remotely like that with visual images. Before I had that realization, I thought it was pretty possible that I was "just describing the same experience differently".
dfan··on What happens in a mind that can't 'see' mental images
Same here! I think whatever compensatory mechanisms I've come up with turn out to be real advantages in some ways.

One interesting thing that I've found is that my approach to physics and math problems is often extremely geometric. Even if I don't visually look at things, I'm constantly constructing objects in my head (e.g., graphs of functions) and playing with them, although it's in more of a tactile way. I'll immediately start thinking "what does this function look like?" when my peers are more likely to start by pushing symbols around.

dfan··on What happens in a mind that can't 'see' mental images
As an addendum, when I calculate variations in chess or Go I sometimes close my eyes because my "board database access" can be easier to operate when everything is purely in my head, as opposed to performing mental diffs on the physical board in front of me, which requires me to keep track of both real and virtual pieces.
dfan··on What happens in a mind that can't 'see' mental images
IM David Pruess has aphantasia and can play multiple simultaneous blindfold games.

Pretty much everyone at my level (2000 USCF) can play blindfold. I always assumed that I was completely unable to because of my aphantasia, but when I heard about Pruess's story, I decided to work on it, and I now can, although with difficulty and very slowly.

Basically I still keep around all the information about where all the pieces are; it's just not on a virtual board that I "look" at, it's stored more abstractly. I keep track of clusters of pieces and relations between them. The fact that I have an excellent sense of the board itself (I know how all the squares relate instinctively) helps. But I still have to stop all the time and confirm where all the pieces are (or, conversely, what's on every square).

dfan··on After AI beat them, professional Go players got better and more creative
One issue with this is that it encourages collusion. If you're a top GM playing someone of equal skill, it's +EV to agree to flip a coin beforehand to determine who will win (and then play a fake game) rather than playing it for real.

Some chess tournaments have experimented with giving 1/3 point for draws instead of 1/2 and it didn't really change much. Mostly it acted as a tiebreaker, which you could have done by just using "most wins" as a tiebreaker anyway.

My favorite idea (not mine) for creating decisive results in chess is that when a draw is agreed, you switch sides and start a new game, but don't reset the clocks.

dfan··on John Barth has died
It kind of predicted LLMs too! According to the framing story, the text of the novel was supposedly created by feeding in lots of source material and then having the computer WESCAC generate a plausible first-person account of the protagonist's life.
dfan··on Othello Is Solved?
"Weakly solving" a game is a technical term. If you have weakly solved a game, you can play perfectly (achieve the optimal result) when the game starts from its initial position. If you have strongly solved it, you can play perfectly starting from any position.
dfan··on Generating chess puzzles with generic algorithms (2022)
I enthusiastically recommend Chess Tempo (https://chesstempo.com/), which will give you interactive chess puzzles from real games that are tailored to your level. Someone else mentioned the similar system on lichess, which is also fine.
dfan··on A 17th-century font in a 21st-century thesis
This is exactly what I miss about modern computer-typeset sheet music. There's a lovely organicness to the very slightly splotchy noteheads etc. in old sheet music, and modern scores feel very antiseptic to me by comparison.
dfan··on A 17th-century font in a 21st-century thesis
That really stuck out to me too. Given the author's care with other things and the fact that the quote marks in the dissertation itself look fine, I assume it's just an unfortunate accidental error and not the result of ignorance.
dfan··on System Shock remake
Brief followup to replies: we were all figuring it out as we went along. When you're doing something for the first time, it tends not to be optimal. People here have noted the janky controls in particular. Even for things where we did iterate a lot and were happy with our solution, it was a solution in a 1994 context, where games were punishing and it was sort of a point of honor to not cut players a break. Game design has advanced a lot in the last thirty years. I'm proud of the the part we played in that evolution... but a lot of it happened after 1994.

I have not played the remake so I don't have any comments on it.

dfan··on System Shock remake
I am one of the developers of the original game and I would not want to play it in 2023.
dfan··on Racket: Lisp for the modern day
This is an annoying Substack thing. Click on "Continue reading" (if you wish to).
dfan··on Writing prettier Haskell with Unicode syntax and Vim
My guess is that the majority of Haskell programmers who are comfortable enough with the forall keyword to use it in practice would find the symbol ∀ to be more readable than the keyword, rather than less. (This is not snark, it's my actual belief.)
dfan··on Convex Optimization (2004) [pdf]
From the introduction: "The only background required of the reader is a good knowledge of advanced calculus and linear algebra. If the reader has seen basic mathematical analysis (e.g., norms, convergence, elementary topology), and basic probability theory, he or she should be able to follow every argument and discussion in the book."

It's a graduate-level course. If that paragraph is arcane, the book is probably a few courses in your future.

dfan··on I bought the only physical encyclopedia still in print
I still possess my grandfather's 1911 Encylopedia Britannica. I didn't fully realize just how old it was until I looked up Nicholas II and the entry began by identifying him as the current Tsar of Russia.
dfan··on Deepmind Alphadev: Faster sorting algorithms discovered using deep RL
I am familiar with the game and I cannot explain it. Go is not typically rated with the Elo system, and the quality of top-level human play has increased since 2016.
dfan··on How is it even possible to cheat on a musical performance practical exam?
I assume the following quote was not meant to be precise:

> The students didn’t even distribute the keys among themselves in a plausible manner. Each student chose an easy key to practice, so there were a lot of F majors and E minors, but no B flat minors or B majors.

but B major is pretty much the easiest scale to play on the piano there is!

dfan··on Show HN: RoboPianist, a piano playing robot simulation in the browser
This is really cool!

There are two motions in particular that pianists use constantly that don't seem to be represented in the robot model, if you're looking to get closer to the way that human limbs and digits operate. (Naturally there are plenty of other goals, but if you can imitate human playing you can do things like suggest fingerings or assess difficulty, as you say.)

1) turning at the elbow (so that your forearm can make an angle with the piano keyboard instead of always being perpendicular to it). It looks like you translate the forearm back and forth instead, which I assume must be a lot easier to handle because of course it's not how human arms work.

2) rotating the forearm/wrist (like turning a doorknob). Pianists do this on basically every note to a greater or lesser extent. To take an extreme example, if you alternate notes with your thumb and pinky you are almost completely using your wrist and not your fingers. Without this degree of freedom it is not really possible to emulate a competent pianist, if that is one of the eventual goals.

dfan··on GNU Octave 8.1
I use Octave to run other people's MATLAB code.
dfan··on Poor schemas, poor cataloguing: why music tagging sucks
You are probably thinking of https://dustri.org/b/horrible-edge-cases-to-consider-when-de....
dfan··on Ain't it funny how the knight moves?
This is a good advertisement for the approach I came up with eventually: if you don't see a trivial way to the next square, find a sequence that will lead to it that starts in the lower right quadrant, then go to that quadrant and get to that square. (The lower right quadrant is the center ring in this diagram.)

I'm used to a version with pawns that involves less backtracking, so it took me a little while to stop trying to be "smarter" and just be okay with continually returning to home base.

dfan··on Ask HN: Math books that made you significantly better at math?
This is different from the other answers, but it does answer your question: When I was a kid I had tons of math and logic puzzle books. Two I remember specifically are "Aha! Insight" and "Aha! Gotcha" by Martin Gardner. Decades later, when a math problem comes up in my work, I have an apparently unusual ability to cut to the heart of it ("by symmetry, we must have X" or "looking at this extreme case, we must have Y" or "this looks like a special case of Z" sort of things) instead of starting by soldiering through equations, and I credit a lot of that to all the puzzle-solving I did as a kid.
Page 1 of 12Next →