Skip to main content
Ben Blank's user avatar
Ben Blank's user avatar
Ben Blank's user avatar
Ben Blank
  • Member for 13 years, 11 months
  • Last seen more than a week ago
Stats
17,983
reputation
2.9m
reached
76
answers
34
questions
Loading…
About

I'm an inveterate nerd who is intensely interested in computers and computing. I've touched on everything from circuit design at the transistor level, up through low-level languages like z80 assembly and even bare opcodes1, to modern compiled and interpreted languages. I even know a few things about general hardware design. I won't claim to be an expert on all of it, though! (Certainly not all at once.)

Currently, I'm really enjoying modern Python and TypeScript for my day-to-day programming, though I've also worked with C17 and Java 8 recently and am keeping an interested eye on Rust. And still periodically trying to cram Haskell into my head. 🙄

When not programming, I enjoy playing video games (in fact, that's how I got started with programming2) and doing video-game-related data analysis and writing video-game-related code. Yeah, I know.

1 What? My graphing calculator didn't have any non-volatile storage, I forgot my data cable that day, and the program I was writing crashed the whole thing… but I really wanted to finish the text wrapping algorithm I was working on (and didn't really have anything better to do), so I pulled up the Zilog opcode reference and started typing them in. I think I still have the sheets of paper I took notes on somewhere around here…

2 I was really bad at the original Civilization and wanted to cheat. It turns out that your civ's cash reserves are stored as a signed 16-bit integer at a fixed offset in the save file. Of course, before I could take advantage of that information, I had to learn what hexadecimal was and how to use a hex editor. Oh, and also the fact that Civilization didn't have any overflow protection on that value, so if you set your money to 0x7fff while making a profit, the value wraps around to negative the next turn, and Bad Things happen. To this day, I remember that 0x7530 == 30,000.

28
gold badges
81
silver badges
117
bronze badges
334
Score
37
Posts
34
Posts %
104
Score
20
Posts
18
Posts %
83
Score
15
Posts
14
Posts %
23
Score
5
Posts
5
Posts %
20
Score
4
Posts
4
Posts %
18
Score
6
Posts
5
Posts %