Miscellaneous ephemera
  • (2023-01-04) Hey, it's 2023. My first official blog act will be to change my RSS feed so that it includes the full blog instead of just the first paragraph or so.
  • (2022-11-23) Why haven't any landers been designed with 50 very thin legs, that can flexibly adapt to the terrain they are landing in, even if many of them break? Just a thought.
  • (2022-09-09) Hm. The full list of links are broken, and I really should make secure urls for all my domains… More patches to come.
Wed, Jul 26, 2023, 12:58pm Complex Number Notation in Swift Code
By far the most common way to indicate complex numbers in code is by postfixing an i, j, or im to a number. Ex: 3 + 4i. This is based on the old pen-on-paper notation in math, physics and electrical engineering (who use j). There's also a nice "phasor" notation, which uses angle-n-magnitude instead of real-n-imaginary coordinates: 5 ∠ 53.13°, though font designers usually create awful symbols (often very tiny, for some reason), making them unreliable to use in code. [Read more…]
Fri, Sep 9, 2022, 10:33pm Septemberin'
Chicago in the spring-summer-fall has perfect weather. We don't have mountains or high altitude, but we do have the lake, which is decent-sized, and a few rivers. But there's always something going on, tons of good people to meet, music, culture, and it's very walkable in many parts. Rarely driving is a requirement for me. If I ever have to drive more than once or twice in a week, then it's not a place I could live. It does, however, massively limit where I can pick to live, but ok. [Read more…]
(in Living)
Sun, Oct 7, 2018, 6:59pm Stack Overflow Fixer
Stack Overflow and Stack Exchange's page layout kinda bugs me. I never use or want the left or right columns, and often the code in the middle column is severely truncated, making it a bad experience for anything but the smallest of code discussions. So I opened the Javascript inspector and created a bookmarklet to fix the problem. Wish I had done this years ago. [Read more…]
(in Living » Internet)
Today I decided to go thru the modest collection of EZ-135 and Zip-100 drives that I still have. Yesterday's work getting the PowerMac G4 on a clean copy of Tiger made this relatively easy to attack, but it was still surprisingly slow and aggravating. There's a reason this old machine had a hardware reset button that would instantly reboot the machine whenever you needed it, and I must've poked it a dozen times today. And then there are the other two or three dozen times I used the software reboot. [Read more…]
(in Computers)
Wed, Jun 14, 2017, 2:23am Epic Backup Project, Volume I: 3.5'' Disks
I'm in the middle of a backup project to (hopefully) end all backup projects. I noticed at one point this spring that you could buy a 6T drive for 0. This is enough room for me to fit all the backups of all other backups on this one drive, and I could then back that backup on my other previous backup drives. This is not a mentally healthy activity, except that it's making me finally get rid of this neurotic wonder I have about what things I do and do not have backed up over the last several decades of computer use.

There are many ridiculous details to this journey, but I'll just mention one here: How I finally got all my 3.5" disks backed up. [Read more…]
(in Computers)
Fri, Apr 15, 2016, 3:38am Ray Tracing à la Metal
So, a couple of days ago, I was feelin' pretty suave getting the ray tracing going in pure Swifty goodness. But I could not resist the allure of the GPU. I decided to stalk the illusive beast known as Metal. And that's kinda what it felt like. I did not jump right in and start coding it up, since I have but a modest idea what's going on in Metal, apart from aping Apple's example code, and transliterating some OpenCL code, earlier in the year. For me the troubles were about how to paint on a texture and to understand the ins and outs of the Metal Shading Language.

For those just wanting to know if it was worth it: The same 1600x800 scene and over 480 reflective objects, went from 702 seconds in the pure Swift version down to 14 seconds! Roughly a 50x speed improvement. That is racing a 12-core Xeon with hyperthreading against a D700 graphics card. Well worth the time invested to compare. [Read more…]
Tue, Apr 12, 2016, 10:28pm Ray Tracing à la Swift
Recently, after a big work push, I needed a break. Something else to work on for fun. While asking around if there was a Slack domain that specifically tried to gather people together interested in doing graphics and GPU programming, I decided to just start it and see if it could draw any interest. The group is called Cocoa3d (email me if you'd like an invite), targeting any kind of use for GPUs on Apple devices, also including gaming in general. A bunch of really great people joined and we started talking about various projects people were up to. [Read more…]