A: Could you do me a favor?
B: Sure, what is it?
A: In my father's stuff he left behind, was there a note or something that had something like a password on it?
B: You mean your password, the one to your, uh...
A: Yes.
B: I thought you said before that you shouldn't know it, that it's dangerous. You could hurt yourself.
A: Yes, but I just can't stand it any more. I want to know. I think it's time.
[read more...]Every time I try to get rid of it, it comes back. I can throw it at a lake, but it curves around in the air like a boomerang, and settles, gently, back into my hand. I can put it in the trash but it pops right back out. I once buried it five miles away, but when I got home it was sitting on my desk. [read more...]
My name is quietfanatic, and I am afraid of failure.
It's not really about people seeing my failures. Rather, I fear that if I fail at something, it'll be a waste of the time I spent trying.
Time I could have been spending on The Masterpiece. [read more...]
From time to time I get migraines. Most people know them as a severe headache that's sensitive to light and sound, but they can have a whole host of strange symptoms as well. My migraines do not hurt very much, thankfully, but they can get weird sometimes. Here is a non-exhaustive list of things that can happen while I have a migraine; I only get a few of these at once. [read more...]
If you spend long enough in the world of software you're going to come across some variant of this saying. [read more...]
Almost every major programming language uses precedence tables to determine the order in which operators are evaluated. These tables are quite useful, but they contain a lot of information that is hard to learn. Many programmers can never remember whether &&
is tighter or looser than ||
, or whether bitshift operators are tighter or looser than bitwise logic operators and arithmetic operators. And even if you can remember those rules, the next programmer to read your code won't necessarily remember them; and so style-conscious programmers generally use parentheses to denote the order of uncommon operations. Some language compilers even produce warnings if you rely on the precedence table for boolean logic operations. [read more...]
The revolutionary approach to design is more romantic, but usually the evolutionary approach is more practical. That's the approach I'm taking for my little bloglet thing here, for the most part, and it's working out pretty well. Building gradually from the baseline to a more fully featured system is both easier and more motivating, as you can see the results of your work as you go. [read more...]
Two weeks ago, I briefly introduced a way of representing Assembly Language in Haskell code, in order to illustrate the programming paradigm to which it belongs. In a move that is sure to scare off both high-level and low-level programmers, I shall now explain how a Monad implementing 6502 Assembly can be created. In real code, this would use more abstract or efficient types, but in this article I'll be as direct as possible, under the principle that abstraction makes concepts harder to understand at first. [read more...]
The previous version of my website was nothing more than a tiny link hub, but it had an integrated Twitter widget. The widget was a simple bit of JS that loaded my tweets into an HTML unordered list. It was easy to style, so I made it integrate with the theme of my website. This was when Twitter was just text, with no inlined images or videos. [read more...]
This won't be a post advocating backup strategies. Backups are good, and you should have at least one backup system keeping track of your most important files. But this is not about that. This is a reminder that data loss occurs. [read more...]