From the javadoc comments in Math.java: “If the argument is NaN or an infinity or positive zero or negative zero, then the result is the same as the argument.” Let me just point out that Java thinks that NaN (Not a Number), positive zero, negative zero, or either positive or negative infinity are different values, andContinue reading “Followup”
Category Archives: Practical Applications of Knowledge
Order Matters
I’ve been playing Kerbal Space Program recently and using the MechJeb plugin. Some people criticise that plugin – “You can do anything that MechJeb does, and if you spend a little time, you can probably do it better” – and they’re right, for some values of right. And yet, “execute next node,” is blessedly useful. ItContinue reading “Order Matters”
Oh Right, That’s Why I Hated Libraries
I dunno, back in, like, 2010, I was working on software that had something like 1 zillion dependencies (or, you know, 50. Same thing) and keeping track of consistent versions of all the dependencies was a real pain in the neck. Our organization had a dedicated CM team who set up Artifactory and Ivy andContinue reading “Oh Right, That’s Why I Hated Libraries”
Decent Encryption Is Getting Easier
I just found out a thing that makes using PGP with GMail on a Mac easier. The problem: PGP encrypting an email means that, at the time of hitting the “send” button, the computer where the plain text message is stored needs to have your secret key and the public key of the recipient, andContinue reading “Decent Encryption Is Getting Easier”
Simulation Distractibility
Yesterday I wrote about solving a problem using SmartThings. Thinking about some of the frustrations I felt during the process has led me back to thinking about the Salamander Simulation Engine. You know what it would be great for? Programming home automation.
SmartThings and the Recirculating Pump
A couple of years ago, we got a recirculating pump to run the hot water line from the master bathroom back to the water heater so we could get actual hot showers. The pump came with a built-in timer so that we could schedule times for it to run. That’s swell if you live byContinue reading “SmartThings and the Recirculating Pump”
Minor Lesson Today
I know that a lot of people use BWW for writing bagpipe music. But I’m cheap, and I use a Mac, and I tried the demo versions of the music notation software my teacher and bandmates use and I hate them (the programs). Iconoclast that I am, I have chosen to transcribe all my musicContinue reading “Minor Lesson Today”
License and Registration?
If you read a book about software development or start a repository on github or bitbucket or launchpad, you’ll confront the question of software licensing very early on — likely, before you even get to the question of what development environment you’re going to use. I’ve come to decide that this is not really helpful.Continue reading “License and Registration?”
Upgrades
Back in, like, 1987, I lived in an apartment with three other guys. The four of us were all computer science majors and one of them had this catchphrase that we heard often late in the evening as he was working on his homework: “It was perfect, so I fixed it.” That has stayed withContinue reading “Upgrades”
Security Is Not a Compiler Flag
With the ongoing brouhaha surrounding the NSA’s surveillance of everyone, everywhere, I’ve got a few friends who are getting excited about figuring out how to secure their email. I kind of want to tell them that their questions, which boil down to, “How can I send secure email,” are, in the words of Mr. Norrell,Continue reading “Security Is Not a Compiler Flag”