09/25/2022 01:33pm Blog Entry
09/11/2022 05:57pm Blog Entry
Back in July, you may recall I mentioned Shadow wasn't the athlete he was when he was younger.
My concerns turned out to be well founded. His age wasn't really the cause. This became clear this past week or so, when Shadow fairly abruptly stopped grooming himself, practically stopped eating, and started drooling. A lot.
We were hoping this would prove to be a dental issue. Old cats have them, but on close examination by the vet, he had no dental issues visible, and no gag reflex, and his pupils weren't reactive, although he could see. On careful examination, and only the second time in our awesome vet's 20some years of experience, the diagnosis was myasthenia gravis.
Shadow wasn't the easiest cat we've had. (That would be Oreo, who's been gone for some years now.) He was not the brightest cat we've had. (Also Oreo). In fact, Shadow was kind of dumb, and didn't like being picked up or held as an adult. He was soft, with a shiny black almost-long-haired cat with little white spots on his belly. He was big, a 14-16 pounder with truly enormous paws. Not as big as the aforementioned Oreo, who was as long but much broader and at least two pounds heavier, but still, a substantial cat. He was gentle, and he loved to be near us and to cadge pets and scratches, until he'd had his fill. Even then, he wouldn't go far. He loved to talk, in his Siamese voice, and would answer when spoken to. He loved to supervise contractors when he was younger. We have infrared photos from when we had our house scanned to find out where all the cold air was coming in. One image has a cat-shaped hotspot and is titled "Shadow, inspecting the window."
I'm writing a new book, so I was spending a lot of time at my desk where his cat bed still is, and in the last couple months, his favorite thing in the world, after being plied with Temptations Purrrrr.ee cat treat paste, was to lie in his cat bed and wrap his arms my foot while I petted him very lightly with my toes. I had misgivings about his health since July, so I was more than happy to indulge him and spend time with my little furry buddy.
The treatment for myasthenia gravis in cats can arrest the progression of the disease, but not undo the effects. Also, despite decades of experience with cats, we had never successfully pilled Shadow or given him any medication of any kind. We were certain this would shorten his life. Ultimately it didn't. We both agreed that keeping Shadow alive in the state he was in was not good quality of life, so we had him put down on Friday.
I held him while he was being put down, and once the tranquilizers took effect, he seemed to like that. There was no clear point where his life ended, really. He was on a big dose of tranquilizer, so his tongue was hanging out and he'd lost consciousness before the vet gave him the surgical anesthetic. He quietly stopped breathing, and his heart eventually also stopped.
I miss the cat. I miss the conversations I miss having a cat nearby at all times. I miss this cat. Sunny, our remaining cat, is mixed between wondering where her brother has gotten to and taking full advantage of the fact that he's not around, but she's a very different cat, and she's M's, not mine. Although she likes me just fine.
We've been talking about taking on a kitten. It won't be the same, of course. Shadow was more than a generic cat, and can't be replaced, but whoever the new cat turns out to be will fill the generic cat-shaped hole presently in my life. There are aspects of Shadow's personality I truly won't miss, but he was a good kitty, and he was my boy, and I was his human.
So farewell, Shadow. I hope you're in a better place, and I hope you'll still remember who I am when I reach the end of my own time. There are some really nice people there, your buddy Oreo is there, lots of other cats, and even a dog. You'll fit right in.
07/11/2022 06:28pm Blog Entry
If you ever think we don't need a national healthcare system, spend some time in an emergency vet hospital. Idiot cat Shadow apparently biffed a landing and was limping, so we took him in to be checked out. (He's fine, just not the athlete he was when he was younger.) There was a man there with a dog who seemed to have had a stroke, and had no money. They were telling him how to apply for a CareCredit (healthcare credit card) while the dog was suffering. If the idea of having to do that with a (human) family member doesn't leave you disgusted and incensed, then I suspect we have nothing further to discuss. It's bad enough with pets.
05/07/2022 05:26pm Book Review
Ten Gentle Opportunities - Five stars.
Full disclosure: Jeff is an old and dear friend, and I was there when he workshopped parts of this book back in 2011. Also, I read this book when it came out. Why I did not manage to review it then, I have no idea.
In any case, read this book. It's a riot. Jeff isn't known for his comic writing, but he's //good// at it. As others have pointed out, there are three worlds going on here: Stypek's world, where magic works, Brandon Romero's world, where it doesn't (more or less), and the Tooniverse, a strange, Second-Life like universe where AIs socialize when they're not working. The novel starts out as Stypek's story, as he rips off a high level mage by cheating at cards. He escapes through mayhem and magic (Jeff is //good// at mayhem)) into Brandon's world, where his skills as a magic hacker translate quickly into skills at computer hacking... but the focus of the story has changed.
Brandon is primarily concerned with getting a revolutionary copier assembly facility working. Instead of merely moving copiers across the floor in two dimensions during assembly, the new design uses all three dimensions of the assembly space by //throwing// assemblies through the air. If that sounds like a recipe for mayhem, rest assured. It is. Controlling this is Simple Simon, the AI, who is the main character in the Tooniverse.
The story is told in three separate worlds, until all three of those worlds collide, and all our main characters come together as an ensemble cast (some more literally than others) as Stypek's nemesis comes looking for him.
The thing is, Jeff pulls this complex story mechanism off because his characters are believable, even the AIs, who are //strange//. (Jeff is also good at aliens, especially AIs) You care about them, and most of them are likable, though some are gruff in spots. When the final showdown happens (much mayhem) it's not just exciting for mayhem's sake, it's nerve wracking because some of these characters could get grievously hurt or killed, or at least lose their jobs (which for the AIs is essentially the same thing.) All the characters have a role, all of them are in danger, and they all use their unique skills and natures to try to stay alive and protect their friends.
For the TL:DR crowd, here's my review. Read it. It's good. Humor, science fiction, and fantasy.
05/07/2022 05:24pm Book Review
The Girl in the Spider's Web (Millennium, #4) - One star.
Larsson's original books suffered in the second and third from over-explaining Salander. Lagercrantz's abomination takes this to a whole new level of bad, trivializing the dangerous, wounded, strong woman of the original novel (Girl with the Dragon Tattoo) into a second rate comic book character. I couldn't finish it, and I donated the book rather than have it around.
04/11/2020 05:03pm Book Review
Drumlin Circus / On Gossamer Wings - Five stars.
Full Disclosure: I /wrote/ the On Gossamer Wings side of this book, and I was probably no more than the third person to read Drumlin Circus, after Jeff himself, and probably his wife. So I'm not a disinterested party here.
That said, let me talk about Drumlin Circus first. Jeff writes a /tight/ short novel. From the opening fanfare when Simon Kassel is first noticing something odd in the bleachers to the end when, well, everything disintegrates into total, entertaining mayhem, the pacing is tight, the dialogue is snappy, the people interesting, and the ideas. Good heavens the ideas. I'm intimately acquainted with this universe, so it takes me a moment to step back and boggle at the sheer volume of ideas. A blown FTL jump leaves colonists on a completely unknown world on the wrong side of the galaxy. There are machines there that can, if you know a drum pattern to give them, make pretty much anything. And everyone has an agenda, from the Institute to the Grange, to the Tears, to the Circus, to the very things the thingmakers make. Truly boggling, and Jeff pulls it off with aplomb. In the past, I've said Jeff writes old school science fiction, and while I meant that as a compliment, I have to say he pulls off new school just as well. I liked Kassel. I liked Lizzie, the Tear witch who is his on-again off-again girlfriend.I liked her boss, the Mother Exalted. More than that, I felt like i knew them, and I kept wanting to give them faces of people I knew because Jeff has fleshed them out as people so very well. And far from the utopia a planet with mild weather, low population, and replicators seems like it ought to be, Valinor (the Drumlin World) seethes with conflict, as people pursue, contest, and fight over different visions for the future of humanity there. Even if I didn't have a stake in this book. Even if I didn't have a novella of my own on the back side of this book, I'd recommend it highly on the strength of Drumlin Circus alone.
On Gossamer Wings, like I said, is my story, so I can talk a little more freely about its creation. Jeff invited me to write in his world several years ago. It wasn't until the idea for On Gossamer Wings popped into my head, nearly full fledged, and wanted a world where flight did not exist, and where Natalie could invent it without also being a machinist genius and a materials science genius, and frankly more geniuses stacked up than were really believable. The story idea /begged/ to be in Jeff's world. Rural? I can do that. Late 19th century technology? I can do that, albeit with much research. (For pete's sake, I had to research /underwear/ to finish that story. Think about it. Elastic is 20th century science.) Tragic story? That's what I had in mind. And as I sat down to write the first few lines, I thought, "Channel Steinbeck. It's that kind of story." I think it worked quite well. The most challenging parts were Natalie's lines and the ending. Natalie doesn't /speak/. She doesn't have human language at all, really. Working up all the gestures for when she was communicating with someone else and then describing them clearly but without repeating myself was tricky. And the ending, of course, was hard to write. By the end of the story, I /liked/ Natalie. I wanted so badly for her to succeed and live happily ever after. But the story needed, with equal urgency, a different ending than that. An ending nobody wanted, but that every step along the way of the story led to, one link in the chain after the other.
About the book format: This book, like the old Ace Doubles before it, has two stores. Drumlin Circus begins with the front cover - the one without the barcode - and runs to the middle of the book. Flip it over to the back - note the barcode hiding in the cover art - and you'll see completely different cover art, and the /front/ of the second story, On Gossamer Wings, is there. Because English is read left to right, with the book "upside down," the second story is rightside up and reads normally, ending in the middle. The ebook is more conventional, mostly because when we built it, there was no nice way that was well supported by ereaders to give access from the "cover" of the ebook to any particular page inside. So the ebook version is much more like a normal anthology, with only two stories, and combined cover art.
03/19/2020 09:02pm Blog Entry
Friend Jeff was pondering in his blog about the usefulness of autopap (APAP) machines as ventilators to combat the shortage of actual ventilators. Doing some digging, I find that ventilators are used for people with pneumonia (why you need one with Covid-19) are mostly about pushing enough air with enough oxygen into the lungs to reduce the inflammation so the lungs can drain themselves, basically. This is not the same as how we picture it - when they're used to force air into the lungs of someone whose breathing muscles aren't functioning. Apparently, APAP can do that, at least some of the time. To whit, this article: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3256460/
Food for thought. We may need tens of thousands of ventilators, which might be hard to find, but we may be able to supplement the ones we have with APAP machines, which are considerably more common, and much less expensive. Heck, even I have an APAP machine.
11/02/2019 09:15pm Blog Entry
Back in 2017, I tried what was, at that time, a very young, very raw text editing program called Manuskript. It wasn't that useful to me for a variety of reasons. Fast forward to this year, and version 0.10 of Manuskript, and that's all changed.
My single biggest problem with Manuskript was that its editor is a markdown editor. At the time, I hated markdown. For me, it represented a huge step backwards - embedding textual cues instead of WYSIWIG. I'd //used// editors like that, man, back in the bad old days, and I was happy to get away from them.
That was before I got into typesetting. A long time ago now, when my first novel, Looking Glass, was published, the original typesetter managed to lose all the italics. If you've read that novel, that's a ton, and every one of them was missing. I never understood how that could happen until I tried it myself.
See, here's the problem. No two WYSIWIG formats are the same. Even Microsoft can't get it right between versions of Word, and even RTF, the de-facto standard for slightly word processed text (and what I was using at the time) changes from implementation to implementation. The translators are never perfect. Having written one to go from Wordstar 3 to rtf, I understand why.
The short version is that styles are a problem. In an rtf, they're stored at the beginning of the file. If you switch between them in an orderly fashion, never using any of those nice formatting buttons at the top of your screen, all is well and good, although the file is still an atrocious mess inside. If you make any change //at all// to a style, you create a new style. Also, styles have real problems when you apply them to one word. They're really designed to style at the paragraph level. It gets ugly, fast.
All this is hidden from the user, who can't (normally) see inside the actual file they're creating. It //looks// fine. If one of those styles gets sent over to typesetting software that's missing a font, or doesn't have the exact features of the version of rtf the word processing software did, things get messy, quick. And the typesetter has to clean that mess up by hand. Also, it's hard to search through and find, for example, "everywhere I used italics" because that may be part of three different styles plus in-line changes, and they probably use different codes to indicate these different methods. Worse, the translators have to figure out how to do something the target format may not really understand, which dumps a lot of machine generated formatting into the typesetting software that's usually, to put it bluntly, wrong.
Which brings us back to markdown. Markdown avoids all this. Basically, it gives you a convenient shorthand for HTML, and the shorthand is designed to be human readable and publishable as it is. I'm not yet fluent in it. By the time I'm done with City of Glass, or whatever Brass and Steel II is called by the time it's done, I will be.
Manuskript's editor is still a markdown editor, but it also gives you WYSIWIG for the markdown you've added (at least, for the simple stuff I've experimented with so far.) Manuskript is much more stable than it was two years ago, and it has working spell checkers (thank your stars... my spelling is dreadful) It's got what looks like a timeline feature I've yet to use. And. Most importantly. It plays nice with Dropbox. I've lost data because the Scrivener format is really a directory of files with an XML header trying to keep them in sync. If you try to roll one back, you'd //better// make sure you roll back the xml, or you're in trouble. Manuskript does the same thing, really, and the version control (!) system that's built in is apparently not quite ready for prime time (so I haven't used it,) so as an option, it zips the file. Simple as that. One file, Dropbox saves the different versions, and if you want inside to look at your raw files, it's all there, in reasonably named folders (once you unzip the file) in plain text markdown files.
I don't really know if I like markdown yet. It may get inordinately tedious by the time I'm done with CoG. I may be screaming for stylesheets or //something// by the time I'm done. Or it may be that, in light of the fact that I'm typesetting my own work in separate programs now, that having a word processor with a built in semi-capable typesetter is not the best choice anymore. I don't know. Being able to see what I'm doing is handy, so I know I'm not making gross formatting errors in my markdown newbie phase. If this doesn't work for me... well... I did always want to write my own word processor... but even if I do, it'll probably output markdown and I'll bolt it up to Manuskript somehow. We'll see how it goes.
Notes on the Raspberry Pi 4b
I recently got a Raspberry Pi 4/4GiB. Below and in the comments are my notes from poking at it.
SSDs are now worth it. My ancient Apple laptop HDD got about 33MB/Sec for both buffered and direct access. My inexpensive (Inland) SSD got about 108MB/sec direct, and 198 MB/sec buffered.
On my big desktop Linux machine with the same $5(US) USB3-SATA interface, I got virtually the same numbers from the Ancient Apple HDD, a bit over 200MB/Sec buffered and about 200MB/Sec unbuffered on the SSD.
The Pi's USB 3 interface isn't as fast as the one on my big Linux box. I know this. It's been publicly stated. It's still plenty fast. As I do not have a 7200 RPM notebook drive to test with, I'll just say that based on the specs, you //might// touch somewhere close to these numbers with a high performance HDD on a Pi, and if the budget is pinching, or you happen to have a 7200RPM notebook drive lying about, you won't do badly with it, but my experience has been that you will feel the difference with the SSD. Particularly with the Pi, where swapping is a way of life, I recommend the SSD.
Numbers generated using hdparm -t /dev/sda and hdparm -t --direct /dev/sda.