James R. Strickland, Author
News (RSS), and Book Reviews(RSS).

11/17/2014 01:46pm Blog Entry

No More Tweets

Final tweet: Leaving Twitter permanently. Too much hate, no substance.

11/15/2014 03:44pm Blog Entry

Linux Blog Client? Anyone

I'm slowly switching my computing universe over from MacOS X to Linux. I'll still be using the Mac for work, where I need more professional software than Linux has. (meaning Scrivener, basically. Yes I know all about the hacked windows version that kinda sorta works in Linux. I've screwed up files quite badly with it and won't use it again.) For most of my mainstream computing needs, though, Linux is more than adequate. It irritates me at least as much as OS-X does, but at least I didn't pay through the nose for the privilege in overpriced, disposable computers.

11/06/2014 02:16pm Book Review

Assembly Language Step-By-Step: Programming with Linux Book Cover image

Assembly Language Step-By-Step: Programming with Linux - Five stars.

Where the Cool Kids Program

A long time ago, in a basement far far away, I was sitting in front of a long-suffering television set, banging away on a Commodore 64, trying to dive beyond BASIC programming to where the cool kids played, down below the user interface, down in the guts of the machine itself. Stripped of the training wheels, you could write programs on that ancient machine that would fly. The cool kids wrote programs in assembly language. I tried. But I never got there. By the time I hit college, they didn't teach it anymore, and gradually, I moved past it to other programming, and ultimately to more satisfying careers doing other things.

But I never forgot.

Given that background, I didn't have high hopes for Assembly Language Step by Step. I know Jeff. I've read and enjoyed his science fiction, and he's blurbed mine, and to disclaim a moment, I know him well enough that he wouldn't let me pay for my copy of this new, near total rewrite of his classic text on the matter. I knew if anyone could explain assembly to me, it would be him, but I still expected to hit the point where my eyes glazed over and I didn't care anymore.

Instead, by five chapters into the book, I had refreshed my knowledge of binary and hexadecimal math. I'd looked into computer architecture to a depth I never reached before, and begun to understand, really understand the true center of assembly programming, the addressing of memory. And it's not like it was in the days when I tried to learn assembly before. Modern operating systems treat memory differently, and it's this new, more complex memory mapping that I understand now. Even after 30 years in and around the computing industry, this book taught me things I didn't know about what computing is, when all the familiar abstractions are stripped away and the bare code is exposed.

I can't wait to go further.

Thirty years later, that geeky kid in the basement who didn't get it, finally gets it.

If you want to get it, if you want to program where the cool kids program, if you want to understand how that machine on your desk really works, you want, you need, you must have this book. Buy this book. You won't regret it.

Highly recommended.
Five stars

-JRS

09/04/2014 07:46pm Blog Entry

Downloads are Back

I finally (finally) finished the new version of Firearms: a Quick and Dirty Guide for the Non-Shooting Writer, and this seemed like a good time to overhaul the sadly empty downloads section. So there's a download again, hopefully one of many to come, free as in beer. Click Downloads, as always. Enjoy!

-JRS

09/01/2014 11:38pm Blog Entry

Theory vs. Scientific Theory - Bite Sci-zed





I've had to argue the difference between a scientific theory and a normal everyday theory more than once. I got it ... mostly right. Above, the host of the Bite Sci-zed youtube channel, a PHD student studying genetics and thus, a professional scientist, explains. The part I got wrong is at the end, where she says there are, in fact, no scientific facts, and that science doesn't /prove/ anything, only disproves it.



-JRS


08/31/2014 01:58pm Blog Entry

Software Preservation, Kryoflux, and Politics

I recently got a Kryoflux board. (much more info here). It's a nice board, and once I got the little problem with my usb board sorted out (Egad, you have to set jumpers to make the internal USB A port live.) it works nicely with the ancient tandon full height 5.25 inch 360k ds/dd drive in my junkbox PC. I've already used it to extract whole floppies full of data from my Ampro Littleboard's floppies, and through the twin miracles of cpmtools and cpmfuse I can mount the sector images and copy out the files. Which I've done.

It'd be nice to be able to write the images back out. Apparently the kryoflux /can/ write files out, but only for certain kinds of files dedicated to preserving every last byte, error, bad sector and so on, which is necessary for copy protected software.

Seriously, why the hell preserve the copy protection? I get preserving the software. The days of the floppy are past, and a lot of interesting software was written that's just fading away as the floppies go bad. (In fairness to those long ago floppy manufacturers, some of the CPM floppies I've been playing with are nearly 30 years old and still not only are readable with the kryoflux, but still work in the Ampro. Properly stored they last quite a long while.) But why preserve the copy protection? Strip it out. Patch it. Yes, it's not a pristine copy, but the point of software is not that every byte is where it was in the original, it's that the software runs (in an emulator, at least) and can be experienced. Cycle accuracy I get. Good emulation, I get. Copy protection, IMHO, should be consigned to the dumpster of history along with its offspring DRM. Computers should do what they're told. It's up to their operators to be moral.

The end result of all of this is that I can't use the Kryoflux as I'd hoped to, to read and write floppies and break my dependence on the floppy interface in the motherboard of my junkbox PC. The Kryoflux folks have promised the ability to write mfm sector images, but they've been promising it for years, and if they've delivered, it's been buried in the groundswell of b******t about open source licenses, "proper" preservation, and all that.

Still. It's a useful gadget. I have exactly one machine left that needs floppies, since I stole the drives out of the Ampro. Hopefully they'll deliver on the ability to write sector images to floppies before my last floppy-capable motherboard dies. I don't /care/ if they're exact physical duplicates of the original disk. Will the original hardware read them? Will the program run? That, IMHO is all that matters.

07/23/2014 07:08pm Blog Entry

Relay Computing, Redux

On Saturday, November 26, 2011, I posted about my nearly-twenty-year-old furnace and its relay computer control systems, and installing An AprilAire humidifier. Two days ago, instead of cool air, to combat the ghastly late July heat, we were treated to the smell of burning insulation. At first, we assumed it was my jumkbox PC (see Separating Work from Play, along with Update 1 and Update 2). I'm loading its very cheap Chinese power supply fairly heavily and it has been very warm. Alas, sniffing the heating duct proved this not to be the case.

Diagnosis: the fan motor had burned out. Our technicians who serviced the thing had been saying, virtually unanimously, "It's working ok now, but it's (19,20,22) years old, and it's not worth spending a dime on parts for it." We took their advice.

So new furnace, one of these Lennox modulating furnaces. Instead of waiting for the house to drop to a low enough temperature to make firing up the big guns worthwhile, it has a range of low power settings down to 35 percent, and will use them when the house is only a degree or two low. It's rated at 97.5 efficient. We also got one of these air conditioners with it. It's a midrange model (whereas the furnace is top of the line) since we cool sporadically 3-4 months a year and heat continuously nearly 8, and the furnace's uber-blower serves both systems.

Expensive? Yes. Does it come with a lot of cool bells and whistles? Yes. The control system on this furnace is impressive. It can control the humidifier. It has an outdoor temperature sensor built into the air conditioning unit. It runs diagnostics on itself It has, I'm told, a Carbon Monoxide sensor built in. It has a directly connected air intake. Its exhaust flue is PVC and plumbed out through the side of the house. The system is nearly silent. It can download its own firmware. Did I have surge suppressors put in on both the AC unit and the furnace? You betcha.

It's not quite to the point of saying "Hal, turn up the air conditioner, please." But it's close.

Naturally the weather broke just as they started testing the air conditioner. Now it's lovely and temperate, after a small rain storm. We have the windows open, and we're enjoying the fresh air. And the amazing, impressive, digitally controlled HVAC system that looks as though they've installed warp drive in our basement... is turned off.

Go figure.

-JRS

07/16/2014 01:47pm Blog Entry

The Power of Denial

I've been doing some Raspberry Pi tinkering of late, messing with my desktop pi's configuration and what's plugged into what. As it turns out, this is the key to the mystery that's been bugging me these last couple weeks. I've been hearing music. Just little snippets, always of classical music. And this without my headphones on. So naturally, I'd check the headphones to see if my desktop mac's playing music from some website I didn't realize was so equipped. Nothing. Check the iPhone. On one occasion, it was the source, but that was music I recognized instantly as being part of my music collection. The little snippets of classical music persisted. I was to the point of thinking that, if one had to have auditory hallucinations, snippets of classical weren't unpleasant, or that someone working outside's music was being caught by the wind. For the most recent one, I glanced back at my Raspberry Pi. It couldn't be making sound. I'd unplugged it from my headphone amp. Could it? I took a closer look. That's when I noticed that I'd left one of my experiments plugged in. I had a set of earbuds plugged into the Pi. Sure enough, when I stuck one of the earbuds in my ear, I got classical music. I have MPD on my Pi. Like any good unix daemon, MPD starts at boot time and resumes whatever it was doing when it was stopped. Including playing music. I had MPD set up to stream from WCPE, a public radio station in North Carolina (Colorado Public Radio's streams are dreadful) specializing in ... you guessed it. Classical music. I was sure none of my computers were making music. I knew it wasn't coming through my headphone amp, because I'd checked. I knew my phone wasn't doing it, because I checked. I was sure it couldn't be any of my equipment, and I was about ready to call my doctor. Beware denial. "It couldn't possibly..." has a habit of becoming "verily, it could." Epilogue: I plugged the Pi back into my headphone amp, and I'm getting the music in my Sennheiser headphones now, in all its glory instead of little tinny snippets from an unknown source. Much better. -JRS

05/15/2014 03:54pm Blog Entry

Lag in Real Life

Stumbled across this: Lag in Real Life. Is it just me, or do they move exactly the way a lot of artificial limbs move? (See also: the Luke arm), and compare it to this: 3d printed hand controlled by human muscles. In the absence of feedback, movements become robotic. If you want to know where cybernetic evolution needs to go next, realtime broadband feedback of vast amounts of sensory data seems to be the answer. -JRS

Novels
Copperwood Double Cover
Book Reviews (RSS)
Copyright 2007-2014 James R. Strickland, All Rights Reserved.