Hey y’all! It’s been, gosh, what, ten years? I finally finished a total site redesign: all-new backend, HTML, CSS, modern image formats, etc. It’s finally readable on mobile now!
There’s a lot of accumulated cruft in the database and filesystem–aphyr.com is old enough that it still has redirects for CGI scripts written circa 2005. While I’ve tried as hard as I can to preserve compatibility, older posts may not look great, or there might be subtle formatting/text-processing issues. If you notice anything that looks super broken, leave a comment (either on the post itself or here), and I’ll try to get it sorted out!
Hey y’all. Doing some long-overdue upgrades on aphyr.com; service will be up and down for a few hours; emails might bounce, etc. as I get things sorted.
Update: All finished, thanks for bearing with me!
Previously: Rewriting the Technical Interview.
Aisha’s hands rattle you. They float gently in front of her shoulders, wrists cocked back. One sways cheerfully as she banters with the hiring manager—her lacquered nails a cyan mosaic over ochre palms. They flit, then hover momentarily as the two women arrange lunch. When the door closes, Aisha slaps her fingertips eagerly on the pine-veneer tabletop. Where have you seen them before?
In this chapter, we’ll discuss some of Clojure’s mechanisms for polymorphism: writing programs that do different things depending on what kind of inputs they receive. We’ll show ways to write open functions, which can be extended to new conditions later on, without changing their original definitions. Along the way, we’ll investigate Clojure’s type system in more detail–discussing interfaces, protocols, how to construct our own datatypes, and the relationships between types which let us write flexible programs.
With apologies, as usual, to Christopher Alexander.
Satisfactory is a first-person factory construction game. COVID-19 has given me license to spend FAR too much time playing it, and I’d like to share a few thoughts that I hope might prove useful, or at least interesting.
I’ve been talking to folks 1:1 about this, but from a scroll through the feed today, I don’t think the general community has caught on. COVID-19 is not fucking around. If we don’t contain or dramatically slow it, we are going to run out of health care workers, hospital beds, and equipment. People are going to die for want of care. This is not a problem of the distant future: recent modeling suggests that without a significant reduction in social contact, Seattle will exhaust healthcare capacity around two weeks from now. Other regions will not be far behind.
In KSP Interstellar, thermal and electric rockets run on power–but producing power with a fission reactor (at least, with the technology accessible early in the tech tree) is frustrated by the high mass of the reactor and electric generator. We can beam power via microwaves, but early experiments revealed that moderately sized orbital fission reactors were not capable of producing sufficient power. We needed more. Lots more.
Solar panels collect energy from the sun; they’re lightweight and inexhaustible, but produce very little power compared to a full-size reactor. Moreover, their power falls off with the inverse square of distance to the sun, making them less effective for outer-planetary exploration.
In February of 2014, I discovered KSP Interstellar, which adds a broad array of hypothetical technologies to Kerbal Space Program. For instance, you can attach a small nuclear reactor to a thermal nozzle, and fly a small plane for several years continuously, using only air for fuel.
Kerbal Space Program is a game that, at its best, conveys the grandeur and majesty of space exploration. I suggest you put on an appropriate soundtrack and imagine the long, slow descent to the surface of the moon, in a craft surrounded by millions of miles of vacuum. Having traveled for days, shedding propellant and stages along your journey, until finally, your final stage hovers, whispering to a halt on jets of burning breath from your ancestral homeland–