Tag: musings

  • The Metric Pledge

    I pledge to use and internalize the Metric System in my own life wherever possible, so long as it does not impact safety. Further, I will not make it easy for others to cling to outdated measurement systems.

    The Metric Pledge

    Note: I wrote this post seven months ago, and it’s sat in my drafts folder since then. A post I saw on Mastodon today made me think it was time to finalize it.


    We are nearing the end of the first quarter of the 21st century, yet we in the United States are still using the idiotic measurement system that we inherited from the British, and even they’ve moved on – mostly. It’s a disgrace. We look like morons for clinging to our outdated system.

    I’m not here to look at the entrenched economic interests and short-sighted political reasons why we’re still stuck with an imperial dunce cap on our heads, but I am here to suggest that, in the absence of any present or likely future official efforts to make the change, we can start a grassroots process to make the metric system our de facto measurement system.

    I am old enough to have been in grade school during the failed efforts in the 1970s to convert the US to the metric system, and whether it was by design or incompetence, it used a technique that was guaranteed to fail.

    I will explain, but first, I must digress.

    You’ve no doubt heard the old riddle, which weighs more, a ton of elephants or a ton of feathers? The answer is, of course, that they would weigh the same, but they would require substantially different amounts of cubic space to achieve equal weight – or let’s call it by its correct term: volume.

    That leads us to this question: Which weighs more, eight ounces of flour or eight ounces of gravel? The answer, in this case, is it depends. It depends on if you mean an ounce of weight or an ounce of volume. That is why if for no other reason (and there are others,) ounces must die – along with all their ill-conceived and illogical imperial brethren. Think about that the next time you make a batch of cookies when the recipe calls for 8 ounces of gravel. (Also, think about getting a new cookbook.)

    I can illustrate the abject failure of the 70’s attempted migration in three sentences that I was taught back then as part of the process. Those sentences are:

    • “There are 2.54 centimeters in an inch.”
    • “There are 1.61 kilometers in a mile.”
    • “There are 3.79 liters in a gallon.”

    I remember these well, and you may ask, “If you remember them after all these years, how are they a failure?”

    Simply, it’s useless information. It’s worse than useless because it perpetuates the imperial-first mindset. You think first in inches, miles, and gallons and then “do the math” to arrive at the metric. Let’s face it, lots of people suck at mental math, and even those that are good at it would probably rather not be bothered.

    Now, I’m sure this technique was probably intended to ground the learning in the familiar. All it really did was take away any reason to bother to learn, and it turned the metric system from a system of measurement to be used into a chore to be endured.

    What is a system that works?

    To answer that, let me present the pre-eminent 1970’s imperial-to-metric success story. You may encounter it every single day and never give it a second thought. I am referring to the 2-liter soda bottle. Just by mentioning it to you, you already know how big it is, how heavy it feels in your hand, and roughly how many drinks you might get out of it. It is a known, familiar quantity, and it is utterly irrelevant how many ounces it is or how many it takes to make a gallon.

    As a counter, you may have the exact same reaction if I said a “gallon milk jug.” That, too, is a familiar, known quantity. You juggle both of these concepts in your head, and you understand them without any need to understand their precise mathematical ratio.

    You, no doubt, have any number of these internalized concepts of various measures in your mind: an inch, a yard, a mile, 5lbs, a cup, or 68ºF. The odds are, you don’t even have accurate measures in your head, just a general idea that’s good enough for day-to-day functioning. When you need precision, you turn to a measuring device.

    My point is that the metric system needs to become second nature to us, and the only way to do that is to use it whenever possible. Here are some things I suggest:

    • Buy yourself metric measuring tools
      • A meter stick
      • A tape measure
      • Measuring cups, etc.
    • Convert your electronics to metric. Practically every electronic device sold internationally can be switched between metric and imperial – set them all to metric.
      • Your phone
      • Digital thermometers
      • Themostats
      • Workout apps
      • Your online mapping tools
      • Your scales
    • Live with those numbers
      • Don’t worry about how many days the temperature exceeds 100ºF; think in terms of days over 40ºC. (Arizona residents will understand that milestone.)
      • Know your weight and what your weight goals are in kilos if you’re dieting or bulking up.
      • Learn how you like your steak done in ºC. (I like my steak at about 55º.)
      • Learn what feels comfortable for you in your house in ºC. (My house is warmed to 20º in the winter and cooled to 27º in the summer. When I go outside when it’s 12º, I like to wear a light jacket. If it’s 0º, it’s time to move to Mexico.)
      • Convert your recipes. It may seem blasphemous to convert your great-grandmother’s volcano cookie recipe, but she won’t care.
        • Recipes can be a little bit tricky, though, because of things like “are you measuring dry items by volume or weight?” Luckily, there are people out there who have done this work for you. If you need to convert a cup (by volume) of flour, sugar, or chopped onions to grams, that information is available without you having to work it out yourself.
        • You might want to tweak some of the amounts. Many recipes are very flexible.
          • If you mathematically convert an ingredient to grams, and it comes up to 47.8g, you can probably round that to 50g without a problem.
          • Some recipes, especially baking recipes, can be very sensitive to exact amounts. Just be aware of that.

    Another thing I suggest is not to be apologetic about using the metric system. Be out and proud about the metric system. If they ask you the temperature, tell’em in Celcius. If they don’t understand it, that’s their failing, not yours. They, no doubt, have a computer in their pocket that can do the conversion for them. Put the burden on them.

    Finally, the Metric Pledge as written says, “…wherever possible, so long as it does not impact safety.” Those may sound like weasel words, but they’re not. If you live in the US, the imperial system is unavoidable; from the parts on an American-made automobile, through any number of types of nuts, bolts, fasteners, and machinery – you’re still going to need that 1/4″ socket wrench. If that’s what you need, that’s what you need – we live in an imperfect world full of compromises.

    …and then there’s safety. There is one thing I do not recommend trying to convert: the dashboard in your car. Speed limits and roadway signs use miles and miles per hour. Don’t fight against that one. Operating a hurtling death machine is not the time to stand on principle.

    We are not going to join the rest of the civilized world with a top-down decree forcing us into the metric system, we’re going to have to do this from the bottom-up.

  • Part 4 – Tying It All Up – Are We Really Doing This Now?

    Let’s try to put this all together in one last post, shall we?

    Killer Sudoku Aide is basically ready to go. The functional code has been locked down for weeks, but there have been weeks of tweaking the interface’s look, updating things to improve the accessibility, and getting ducks in a row to get it in front of beta testers. (If I can find any beta testers. Please? Someone?)

    Screenshot from the app Killer Sudoku Aide

    You need to maintain a surprising number of web pages to have an app in the iOS App Store. There are probably more than I currently know, but at least you have to have a support contact page and a privacy policy page.

    Where to put them?

    Because lonelocust.com had become all about me, I didn’t think it would be a good fit. Besides, I own other domains, just doing nothing. I plan to revive the Pizza Locust in some form. Spottings seems inappropriate. I know! Ninja Team! That’s a cool name no matter what you tag it onto, and ninjateam.com is mine – and has been forever. (In Internet years)

    There’s just one problem. Somebody, in the intervening years, grabbed the (frankly, inferior) ninjateam.org variant of that domain name and set up a business. I’m surprised they never tried to buy ninjateam.com from me.

    If they’d been an accounting firm, a sprocket manufacturer, a company that vacuums out portable toilets on construction sites, or practically any other kind of business, I’d just continue on with my plans and use my domain for my apps.

    But, of course, they’re a software consulting company, and I don’t want to cause any unnecessary confusion, so I will leave it until I have some other project I can use it with.

    My hubris for thinking businesses would honor the moral and ethical superiority of the .com domain and banking on that assumption.

    …and that brings me back to lonelocust.com.

    Which is why I’m re-organizing things here. I’m not ready to delete all my old blog posts, but I can play them down by moving them to a sub-page. And I can bury the old ones a bit by making an effort to have some more current content. (Like, for example, making a bunch of blog posts explaining why I’m making a bunch of blog posts.)

    At this point, with precisely one app, and currently no plans or ideas for a second one, I don’t feel like playing the game of pretending I’m not just one guy writing an app, nor am I in any way ashamed of who I am. (Youth is the time to doubt yourself when you have yet to measure yourself up to the rest of the world, old age is the time to know and not to give a crap anymore.)

    I do feel like I should do a little more long-form writing for a bit, so perhaps I’ll tell the story of the development of Killer Sudoku Aide.

    Next time.

  • My Journey to an iPhone App

    Like a lot of nerds, I’ve been coding since I was a kid – 14 years old, in my case.

    Unlike a lot of them, I’m much older. Teenage coders were few and far between in 1979.

    When the TRS-80 was announced/came out in 1978, I was 13 years old. And I begged my dad to get me one. I volunteered to do chores around the house, which, admittedly, I was terrible at. I hustled for money. I took my dad’s coin detector down to all the parks in Tucson and searched the sandboxes for change. The fundraising wasn’t going well.

    I just desperately wanted a computer. I didn’t have a goal in mind, but it was the coolest thing ever.

    True story: Computers were cool because of Star Trek, but I didn’t have my obsession for real-world computers until, some years earlier, when my dad had been given a box of fanfold green bar wide-carriage computer paper. He had no use for it, so it was given to me. That was also the coolest paper on the planet, and because it was for real computers, the coolness rubbed off onto the computers.

    I hadn’t chosen my direction in life by that point and was vacillating between a career as a paleontologist or a forest ranger, and I certainly didn’t realize it at the time, but that box of paper set me on my path of destiny.

    In 1979, my dad had planned a summer-long camping excursion from Arizona to Alaska by way of New Mexico, Colorado, Wyoming, Montana, Idaho, Washington, British Columbia, the Yukon Territory, and finally, Alaska. Alaska had been on his and my mother’s radar as their dream camping destination since before I was born. They never made it before she died, and my dad clung to the idea, and now he was going to make it a reality.*

    It would just be my dad and myself. We had a hard-top, soft-side pull-behind tent camper, and I wasn’t necessarily keen on being on the road for almost three months with no TV. You can play only so many cribbage games against your dad (and be soundly beaten) before the allure wears off. This was the longest camping trip he’d ever planned, and I think he detected my reticence.

    So he bribed me.

    For the trip, he agreed to spend roughly 50% of the time staying at KOAs. He could justify this because they always had showers, and we could clean up every few days. They also had electrical hookups. He bought me a small portable, black and white, A/C & battery-powered TV, with a 5″ screen, and a TRS-80 Model I, Level I computer.

    I spent that summer in a tent, learning to program a computer. And I didn’t just learn TRS-80 BASIC, either. I also had to learn Apple II BASIC because, in those days, there were magazines that would print source code for you to type in, but often the magazines would support multiple hardware, and sometimes the program you wanted was an Apple program. I learned Apple BASIC without access to an Apple computer so that I could port the program to the TRS-80. (It was not always possible.)

    I clickety-clacked my way through that trip on that TRS-80. I was compulsively obsessive about it. I loved it.

    It wasn’t long after the trip I wrote my first program and got paid for it. It was a ridiculously simple program (by today’s standards) to store daily stock prices by ticker symbol and graph them historically versus the DJIA. Was it actually useful? Probably not, but it was what the customer wanted.

    I have been coding for what seems like an inconceivably long time.

    The other day I tried thinking about all the programming languages I’ve learned over the years, and I can’t enumerate them all.

    There was TRS-80 BASIC and Apple II Basic. (Integer BASIC, maybe?) I went to community college, which was all about COBOL-68 and FORTRAN-77 on punch cards! At university, it was UCSD Pascal, or machine code, on DECwriter terminals. Somewhere in there, I bought an IBM PC – the TRS-80 had long since died – and started learning Turbo Pascal and became an absolute whiz at batch programming.

    My first salary computer job with a corporation had me learn an incredibly obscure language called Micro-Adapt, which was, as far as I can tell, a PC implementation of an obscure database language for some larger systems. I have never successfully found a trace of either language on the Internet, but they existed. I picked up Oracle SQL shortly after that, and then we got an AS/400, which I had to learn from scratch, without any training. I started with BASIC/400 and SQL/400, and I was able to put together the programs needed to replace the Micro-Adapt, but the performance was really lackluster. So I taught myself RPG III and RPG IV/400, and that improved their performance so greatly that I re-wrote all the programs in RPG.

    Knowing RPG was good for me, and my salary jumped greatly when I moved to my next RPG job. There, I also had to pick up dBase III/IV, Clipper, VBA, HTML, and JavaScript.

    In the last few years before my retirement, I moved to the realm of OOP and Java programming.

    And I thought, 20+ languages is probably good enough for a lifetime. I’m probably missing a few, and I’m sure most of it’s forgotten.

    You might have noticed that C or C++ is not on that list. I’ve never needed to learn C for anything. Its ubiquity made me feel like I ought to learn it; I tried a couple of times but can not take in a programming language without a clear-cut objective. I’m familiar with it and can decipher some of it, but it’s never taken root.

    A while back, I decided that I should learn to program the iPhone. I could perhaps get rich in my spare time! Once again, without a specific goal, I tried learning Objective-C and Cocoa Touch, which didn’t go well. Perhaps my brain was ossifying, but I had real problems getting my head around Cocoa Touch’s implementation of MVC, and eventually, I just gave up.

    About a year ago, two things happened. My trusty HP-28S calculator died. (Oh, yeah, there’s another one, I used to program that in RPL.) I replaced it with an HP Prime Calculator, which uses PPL to program. The other thing that happened was that I started playing the Guardian’s Killer Sudoku puzzles. (I subscribed to have a steady source of Cryptic Crosswords to learn to solve, which I’m crap at, but I got addicted to the Killer Sudokus. I suspect there’s probably a deep insight into my mind in that if we just dig a little.)

    There are a number of charts and math tricks you can use to help solve Killer Sudokus and with the new calculator very fresh in my mind I realized this was a specific goal that I could use to learn PPL. So I did, and the program is really helpful… or at least, it used to be, because eventually, it all gets committed to brain muscle memory, and I found myself using it less and less.

    There is also an HP Prime emulator that you can get for your iPhone, and I loaded that and my Killer Sudoku Killer program on it, and when I did find myself needing the program, I was using it on my iPhone rather than the actual calculator.

    And then I slapped myself on the forehead, shouting ‘D’oh!” when I realized that this was the specific goal I should have used to learn to program the iPhone.

    Objective-C and Cocoa Touch have given way, at least partially, to Swift and SwiftUI, and so I started from scratch once more to learn to code the iPhone exclusively with Swift and SwiftUI.

    That adventure is another post, but just a few hours ago, I submitted version 1.0 of Killer Sudoku Aide to Apple for review and hopeful inclusion in the App Store.

    And now I wait. Will it get accepted or rejected, and if so, why? What perceived sin might I have committed against the capricious Apple App Store Review Gods?

    Time will tell.


    *We never made it to Alaska. Outside Santa Fe, NM, my dad was stung by something on the finger, and it started to swell up. After a few days, hunkered down in one spot in the woods, it was still getting worse, so we moved on to Denver, CO, where he saw a doctor seeking treatment. They treated it, and it seemed to be improving, and we continued on, but it never healed completely.

    Having lost time, my dad tried to accelerate the trip, and within a couple of weeks, we were in Seattle, WA. The finger was swelling and being gross again, and he had to seek more medical treatment. This time they cut it open, drained it, removed something that was in there, and sewed it back up.

    My dad had had enough. He was in a lot of pain and not enjoying the trip. We turned south through Oregon and California and returned home. My dad never made it to Alaska. For that matter, neither have I. Yet.

  • Part 3 – The Internet’s Original Ninja Team – Are We Really Doing This Now?

    Public Access TV made way for YouTube.

    Public Access TV was a stipulation in the contracts with cable TV companies when they were granted city-sanctioned utility monopolies in many US cities. The idea, briefly, was that TV is a powerful medium controlled exclusively by big corporations and that community members should also have access to that medium.

    Cable companies were required to provide free equipment and resources for local producers. They could not exercise any editorial control – beyond those stipulated by the FCC, such as no pornography and rules against using free access for commercial purposes.

    In a world where camera availability, quality, and affordability were rapidly improving; computers we making dedicated edit suites obsolete; and anyone could upload any video to YouTube for a worldwide audience, Public Access TV didn’t make much sense anymore.

    Fusion Patrol, the TV Series, was ending at the beginning of the YouTube era. Over the course of several years, we had learned (some would argue that it was quite painfully learned) that you can’t just hand someone a camera and editing equipment and expect quality work. Enthusiasm can only carry you so far. There’s a reason the big boys spent a lot of money on their equipment and training.

    With a conscientious approach, you can identify your shortcoming and, to some degree, improvise solutions to improve the quality of the final product. (Remember we are talking about the days of handheld camcorders and no smartphones.)

    In those early YouTube days, we saw people making the same mistakes we made years earlier. We also saw that the books and online tutorials were still in the mindset of “buy the good equipment, and here’s how the pros do it.”

    That left many people out who couldn’t afford to buy C-Stands, dolly track, a steady cam, or any other expensive specialist equipment. But you can improvise.

    That is how the Ninja Team Video Project (NTVP) was born. One of my friends, who is quite conversant in photography and videography, and I decided to make a series of instructional videos on improving making videos. We made a few, but time slipped away from us, and the rapid acceleration of the quality of consumer equipment made it unnecessary.

    The name Ninja Team was one of our very few first “pie in the sky” names. Even back then we were sure there was no way ninjateam.com would be available.

    But it was. And I own it and have done so for decades now. It has also been in mothballs for many years after we stopped the NTVP.

    I promise you, this is all relevant.

    With Fusion Patrol the TV Series wrapped up, with NTVP shut down, and a couple of other projects under the Lone Locust umbrella (Spottings, The Pizza Locust) ended, I eventually ended the pretense that Lone Locust Productions wasn’t just me.

    I am the Lone Locust, and lonelocust.com became the online place about me, and in 2005, I converted it to a personal blog.

    Things are changing again, all because of that iOS Killer Sudoku Aide app back in part one of this epically long multi-part blog post.

    In part 4, I’ll explain why my app is driving this change and how my hubris about the Ninja Team is causing the changes to happen here.

  • Part 2 – The History of lonelocust.com – Are We Really Doing This Now?

    That last post may have seemed very random. Well, life is like that. It’s not neatly wrapped up in a simplistic series of causes and effects.

    However, my mind requires that life is like that, so when I gather my thoughts to tell a story, the pieces must be there no matter how spurious they seem. I’m also using this opportunity to re-introduce myself. I’m certainly not the same person I was when this domain became a blog in 2005.

    One piece of that puzzle is this domain, lonelocust.com, and what it means to me. The story of this goes back even beyond 2005.

    In the early 1990s – before I had two children (both legal adults now) and before I met my wife, I was a dilettante writer/video maker. I became fascinated with public access television, which was a thing back then.

    I, and a group of my friends, created a public access TV show that aired for several years locally in the Phoenix area called Fusion Patrol. It was really nothing like the podcast that currently operates under that moniker, although they are spiritually linked.

    I’ll spare you the origin story of Fusion Patrol as a TV show, but all the info remains online here at the Fusion Patrol FAQ. An FAQ so good that another public access show elsewhere in the country plagiarized much of it word-for-word, and I had to be a bit unpleasant with them.

    Fusion Patrol originally started under the Bleeding Obvious Productions banner. Bleeding Obvious was apt because it reflected the type of humor we were attempting. It was not meant to be subtle, yet, at the same time, it was meant to reflect that we were going to bury subtextual references to other sources like Monty Python as homages in our work. (A very early example of “if you know, you know.”)

    (That has been a consistent theme for me going back into the ’80s to my original 1200bps FidoNet BBS – 114/12 The Crunchy Frog BBS.)

    The inspiration for “bleeding obvious” is a line from the Fawlty Towers episode, Basil the Rat, where John Cleese has the line, “Next contestant, Mrs. Sybil Fawlty from Torquay. Specialist subject – the bleeding obvious.”

    That name soon changed to Lone Locust Productions. That, too, is a television quote. In this case, it was from Space Ghost: Coast to Coast when the character of Zorak (a mantis, not a locust) uttered the now immortal words, “I am the lone locust of the apocalypse. Think of me when you look to the night sky.”

    I fell in love with the concept immediately. The very idea of a singular locust pushes all my funny bone buttons in just the right spots. It’s absurd. It’s a bit sad. It rolls off the tongue with a pleasing alliteration. And it felt like my role when making Fusion Patrol. I was the lone locust trying to get a group of grasshoppers to swarm.

    So it came to pass that lonelocust.com and fusionpatrol.com were the first domains I ever purchased.

    Lonelocust.com was initially intended to be a catch-all top-level domain as a parent to all the named projects, like Fusion Patrol, that I would do over the years. It also became my social media handle of choice.

    Next time – Part 3, the Internet’s original Ninja Team.

  • Part 1 – Are We Really Doing This Now?

    Imagine this: You still use an RSS reader. Maybe it’s been set up for a decade or more, and today, in some small, disused corner, there is this post, from Lone Locust Productions.

    I’m not kidding myself. The chances there are more than 5 people on the entire planet are slim, and those people have probably all forgotten that they were.

    So, why now?

    Partially, it’s my hubris. Let me explain.

    Several times over the last few years, I’ve considered delving into iOS app development. Not because I have some brilliant idea for an app to make a fortune but because the challenge of adding another programming skillset to my arsenal amuses me.

    And it is genuinely just about the amusement factor. Conservatively, I have programmed in at least 10-15 languages over the decades. I flatter myself into believing that if, as Apple says, “…some grandmother in China is a thriving app developer,” I shouldn’t have any problem, either.

    I’m retired. I have time on my hands. As far as I can tell, the coding part of my brain hasn’t atrophied too much. This should have been a breeze.

    But it has been anything but.

    I have had several complete false starts, working my way through various books or online tutorials, and while I grok them, I have failed to apply them to anything productive.

    That’s just how I am. In every prior programming language that I’ve learned, from FORTRAN to Java, I’ve had specific programs that I wanted (or needed) to write. With an objective in mind, I can thrash my way through any project and learn any needed skill along the way, but without a concrete objective, I drift and lose focus and drive.

    Try though I might, I have failed to have an objective – until now.

    About 12 months ago, I had to replace my beloved and somewhat ancient HP-28S calculator. I was mortified to learn that HP has gotten out of the “good” calculator game. Ceding the market to massively inferior Texas Instruments ones. (OK, it has been 40 years since I owned a TI calculator, but I don’t forgive or forget easily.)

    Luckily, you could still buy the last of their flagship scientific calculators, the HP Prime, so I bought one.

    About the same time, I got the habit of playing the Guardian’s Killer Sudoku puzzles.

    Not sure what a Killer Sudoku puzzle is. They are not ordinary Sudoku puzzles that have a difficulty rating of “killer,” they are a different variation of Sudoku. The Guardian describes them thusly: “Normal sudoku rules apply, except the numbers in the cells contained within dotted lines add up to the figures in the corner. No number can be repeated within each shape formed by dotted lines.

    A lot of what you need to do in Killer Sudoku (KS) is to work out the possible combinations of digits (1-9) that will “…add up to the figures in the corner…” of the “…cells contained within the dotted lines.” (I call this a “cage.”) At the same time, digits and their placement must also comply with standard Sudoku rules, too.

    I find the puzzles enjoyable, but, particularly when I was starting out I kept a sheet of paper that I had printed and laminated that listed all the possible combinations. It can certainly stuck, particularly on the larger cages.

    Example: A cage with four cells that adds up to 14 has five different combinations. (1,2,3,8), (1,2,4,7), (1,2,5,6), (1,3,4,6), and (2,3,4,5)

    It can also tell you other things in more oblique ways. In the example above, I can tell not only what might go in the cage, I also know what cannot – in that example, “9” cannot be present. This can help to figure out things outside the cage you’re looking at.

    But there’s more you can do. In that same example, say you’ve figured out, through other means, that the cage cannot contain a “2.” If that were the case, the only possible combination that works is (1,3,4,6).

    I thought to myself, “This is a programming problem, and I can do better than a paper list.” I had a nice shiny new programmable calculator, and I had an objective to work towards.

    And so, as I’ve done many times in my life, I sat down and learned the HP PPL programming language and dashed off my Killer Sudoku Killer (as I then called it.)

    It works well if I do say so myself. (And since I’m the only person who’s ever seen it, or ever likely to see it, you’ll have to take my word for it.)

    Months later, I slap myself on the forehead and shout, “d’oh!” as I realize that I should have used the opportunity to learn to code for the iPhone instead.

    I also realized it’s not too late, and so, in fact, I have ported it over to iOS, and that was an adventure of its own, which I will recount in a later post.

    So back to the original question, “Why now?”

    The answer to that and the related question, “Why here?” will have to wait for part 2 of this post. Stay tuned; it will happen.