tag:blogger.com,1999:blog-129543912024-03-13T16:22:46.162-04:00Tales from FAR ManorWeird fiction. Even weirder reality.Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.comBlogger1942125tag:blogger.com,1999:blog-12954391.post-66658934835734551992023-01-06T23:13:00.000-05:002023-01-06T23:13:31.370-05:00The Naked King (part 2) #FlashFicFriday<p><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyp-V2w3bMbri_GOk5SVwLylKez4YZYoHqIh1feSOwIWcIPocOyvdsAsmKjP1UPTCXYfJjeA0-4gvL1sod-drgKVriZ_fnb0XMtHonJlNmiSB3ErMpfJHT9EjFo2vYVlfnxCwq0MKdYTYzYswilcvHCs9Rw8_gM2yPCMcVO0fFnv78-VtW/s400/crown.png" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="400" data-original-width="283" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyp-V2w3bMbri_GOk5SVwLylKez4YZYoHqIh1feSOwIWcIPocOyvdsAsmKjP1UPTCXYfJjeA0-4gvL1sod-drgKVriZ_fnb0XMtHonJlNmiSB3ErMpfJHT9EjFo2vYVlfnxCwq0MKdYTYzYswilcvHCs9Rw8_gM2yPCMcVO0fFnv78-VtW/s320/crown.png" width="226" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Image credit: <a href="http://openclipart.org" target="_blank">openclipart.org</a></td></tr></tbody></table>Once upon a time, in the Strange Lands north of Aht-Lann-Tah, a king got swindled by two dudes pretending to be tailors… yeah, you know that story. You have to wonder about a king, who would be willing to expose himself to louts who weren’t worthy to see his wardrobe, but royalty doesn’t see reality <span style="text-decoration: line-through;">in the way you or I would</span> at all. And even if the clothing was invisible, the dolt should have <i>felt</i> it as he got dressed.</p>
<p>But I digress. You know the next part: a child called out, “He’s naked!” and all the other folk watching the grand parade could no longer pretend. I’m here to tell you what happened after that.</p><p style="text-align: center;">• • •</p>
<p>The fake tailors had long skedaddled. King Atate issued a proclamation, offering a huge reward for their capture, saying they had created clothing that was invisible to not only the unrefined, but to everyone. That was met by general derision, and a running joke in which patrons attempted to pay for drinks and groceries with invisible money, claiming that only the best merchants could see the coinage. The merchants went along with the joke… as long as the customers provided visible coinage in the end, because it <i>was</i> funny.</p>
<p>As far as I know, the swindlers were never caught. They may have kept running until they dropped dead from old age. Jokes or no, that didn’t stop citizens from trying to find them, and some dishonest folk attempted to pull a reverse Anastasia of sorts, claiming their battered victims were the swindlers.</p>
<p>The latter stopped when the king refused to grant further audiences. Most of his subjects assumed he ducked out to his summer palace; but there were persistent rumors that he owned a villa outside Aht-Lann-Tah, and had fled there.</p>
<p>Now the authorities in Aht-Lann-Tah were eager to capture King Atate, as he had been accused on many occasions of mistreating (in the worst ways) local serving-wenches, claiming royal privileges outside his own realm. But honor and their laws meant that they would not move unless they knew he was in their realm.</p>
<p>The great weakness of royalty is, they are insulated from reality. Thus, they often do not understand that the best course of action is to take the L and distract their subjects with some other spectacle. And so it was with King Atate. His attempts to find the child who had spoken out during the parade fell flat. A nobody can be anybody, after all. Other attempts to address the issue were met with peals of derisive laughter.</p>
<p>So King Atate, having indeed fled to his villa outside Aht-Lann-Tah, drank himself into a semi-functional stupor and commanded his servants to transcribe a speech and take a photo of himself, sitting at a table with his traditional non-swindled regalia, as he spoke.</p>
<p>Unfortunately (for King Atate), he had neglected to remove the Jeroboam’s Pizza box from the table as he spoke. Jeroboam is a popular local chain in Aht-Lann-Tah, and the authorities pounced as soon as they saw the photo. The embassy protested, but only diplomats have immunity—not kings.</p>
<p>And so, King Atate was (to the relief of many in his kingdom, not to mention the girls held captive in his villa) taken into custody. The child who had been brave enough to call out the monarch issued a note: <i>If only that pizza box had been invisible as your clothes</i>.</p>
<p>After a short period of uncertainty, the kingdom righted itself. With no heir to the throne, the dukes formed a council, and managed the affairs of the realm as best as they could (by comparison, they did well). And so, except for King Atate and his hangers-on, they all lived happily… until the next thing happened.</p>
<p>The “next thing” never takes long in the Strange Lands.</p>
Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com3tag:blogger.com,1999:blog-12954391.post-44442625508073429222022-11-02T07:00:00.004-04:002022-11-02T07:00:00.210-04:00Adventures of a #techcomm geek: Still I look to find a reason<p>A future project—I plan to start on it in earnest early next year—is requiring a specific set of “reset reason codes.” The codes, and their meanings, are described in MULPI (a standard specification in the industry I work in)… at least, so said the ticket the developers are using to track this piece of the melange that makes up modern communication devices. I had a PDF copy of MULPI on my work system already, and once I realized the spec said “initialization reason” where my co-workers used the more direct “reset reason,” I found the table in section C.1.3.6. Hey, it’s only 887 pages.</p><p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJTxy8nHfyC5Q8ZPHZwQSdsU5qW3TSzDh6D8fMOVyRvN21qUvkmE7SIcsBbUwWIH35sYZoULQRDq6wiZkKVC7qIavAmlN376JiW0PCjvPn3MnJnnFm9DYPxR1S5D4oVhJU7Ja-LQizuZDX1xO-T2qERmEh2i5aItZcV3vWLoX995Zqs9cu/s512/init_reasons.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="512" data-original-width="388" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJTxy8nHfyC5Q8ZPHZwQSdsU5qW3TSzDh6D8fMOVyRvN21qUvkmE7SIcsBbUwWIH35sYZoULQRDq6wiZkKVC7qIavAmlN376JiW0PCjvPn3MnJnnFm9DYPxR1S5D4oVhJU7Ja-LQizuZDX1xO-T2qERmEh2i5aItZcV3vWLoX995Zqs9cu/s320/init_reasons.png" width="243" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Needle in a haystack</td></tr></tbody></table><br />Besides it being a table—I hate tables, in general—I found two glaring issues:</p><p></p><ul style="text-align: left;"><li>I wanted the number in the left column, not the right</li><li>The table did not describe the conditions that would cause the reset</li></ul><div>The latter was a matter of searching the PDF on <i>initialization reason</i>, but first I wanted to reverse the columns in that table. Copying the table out of the PDF, and pasting into a terminal window, gave me one line per cell:</div><div><div></div></div><blockquote><div><div><span style="font-family: courier;">Initialization Reason</span></div><div><span style="font-family: courier;">Initialization Code</span></div><div><span style="font-family: courier;">POWER-ON</span></div><div><span style="font-family: courier;">1</span></div><div><span style="font-family: courier;">T17_LOST-SYNC</span></div><div><span style="font-family: courier;">2</span></div><div><span style="font-family: courier;">ALL_US_FAILED</span></div><div><span style="font-family: courier;">3</span></div><div><span style="font-family: courier;">BAD_DHCP_ACK</span></div><div><span style="font-family: courier;">4</span></div></div><div><i>etc</i></div></blockquote><div><i></i></div><div>Once again, I had a textual nail, and I reached for my hammer: <i>awk</i>. Redirecting the lines into a junk file (literally called <span style="font-family: courier;">junk</span>), I decided to create tab-delimited output with the column order reversed:</div><div><span style="font-family: courier;"></span></div><blockquote><div><span style="font-family: courier;">awk '{getline num; print num "\t" $0; next}' junk</span></div><div></div></blockquote><div><i>Mirabile dictu</i>, it worked the first time! The <span style="font-family: courier;">getline</span> function does a sort of look-ahead, grabbing the next line of input before the normal <i>awk</i> loop can get to it. So it’s pretty easy to grab two lines, print them in reverse order, and move on to the next pair.</div><div><br /></div><div>“Oh,” I then thought, “I should have made it a Markdown table.” Rather than start over, I just piped the output of the first <i>awk</i> script into another one:</div><div><span style="font-family: courier;"></span></div><blockquote><div><span style="font-family: courier;">awk '{getline num; print num "\t" $0; next}' junk | \</span></div><div><span style="font-family: courier;">awk 'BEGIN {FS="\t"} NR==2 {print "</span><span style="font-family: courier;">|</span><span style="font-family: courier;">-----</span><span style="font-family: courier;">|-----|</span><span style="font-family: courier;">"} \</span></div><div><span style="font-family: courier;"> {print "|", $1, "|", $2, "|"}'</span></div><div></div></blockquote><div>Once again, first time was the charm! This “long pipeline of short <i>awk</i> scripts” approach does make debugging easier, especially if you don’t have to do any debugging. If you’re not familiar with <i>awk</i>, let me pretty up that second script to make it easier to follow:</div><div><div><span style="font-family: courier;"></span></div></div><blockquote><div><div><span style="font-family: courier;">BEGIN {</span></div><div><span style="font-family: courier;"><span> </span>FS="\t"</span></div><div><span style="font-family: courier;">}</span></div><div><span style="font-family: courier;"><br /></span></div><div><span style="font-family: courier;">NR==2 {</span></div><div><span style="font-family: courier;"><span> </span>print "|</span><span style="font-family: courier;">-----</span><span style="font-family: courier;">|-----|"</span></div><div><span style="font-family: courier;">}</span></div><div><span style="font-family: courier;"><br /></span></div><div><span style="font-family: courier;">{</span></div><div><span style="font-family: courier;"><span> </span>print "|", $1, "|", $2, "|"</span></div><div><span style="font-family: courier;">}</span></div></div><div></div></blockquote><div>The <span style="font-family: courier;">BEGIN</span> block gets executed before the script reads its first line of input. In this case, it sets the field separator (the character or regular expression that breaks a line into fields) to the tab character.</div><div><br /></div><div>The block beginning with <span style="font-family: courier;">NR==2</span> applies only to the second line of input (NR = “record number” or line number). In this case, it prints a Markdown separator (between table heading and body) before processing the second line… remember, <i>awk</i> takes each pattern/action pair in order. Since there is no <span style="font-family: courier;">next</span> statement, it falls through to the default action.</div><div><br /></div><div>The last block is the default action, since it has no pattern to trigger its use. It puts Markdown table call separators on each end of the line, and between the two fields. The commas insert the <i>output field separator</i> (a space, by default). I could get the same result with:</div><div><blockquote><span style="font-family: courier;">print "| " $1 " | " $2 " |"</span></blockquote></div><div>So I copied the Markdown-formatted table from the terminal window and pasted it into a text editor. From there, adding a third column was easy. Not so easy, or at least somewhat more tedious, was searching the PDF for “initialization reason” and adding the conditions triggering each reason code to the table. In some cases, there are multiple issues for a particular reason. In two cases, there was nothing in the spec at all about the reason code. Fortunately, I was familiar with one of the causes and the other was straightforward.</div><div><br /></div><div>The Markdown has been converted to DITA, and is now waiting for the project to get started in earnest. And it won’t be bugging me to <b>deal with it</b> over the next couple months.</div><p></p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com1tag:blogger.com,1999:blog-12954391.post-32591911577256387482022-10-10T07:00:00.001-04:002022-10-10T07:00:00.208-04:00Pizza Night Multilemma: solved!<p>I still remember an old <a href="https://en.wikipedia.org/wiki/Hägar_the_Horrible" target="_blank">Hägar the Horrible</a> strip, where the family is gathered around the table. Supper is a pizza, presumably with everything, and everyone wants to take out a topping (anchovies, vegetables, what have you). Helga, the wife, thinks, “I hate ‘take-out’ food.”</p><p>I can relate. If we order pizza, we usually have to order two, both with one set of toppings on each side (and make something else for Charlie). I like everything (especially meat), wife prefers mostly veg, Mason’s a minimalist (he’s recently shifted from pepperoni to plain cheese), and Charlie can’t eat regular cheese unless we want Fukushima-style containment breaches.</p><p>But I have solved the Pizza Night Multilemma. The TL;DR: everyone gets their own custom pizza.</p><p>By doubling my go-to pizza crust recipe, I can divide it into fourths, then top each one with exactly what everyone likes. Everyone wins, even Charlie, as he does pretty well with the vegan version of mozzarella. I asked him what his favorite thing to eat is (knowing the answer), and he said, “bread!” When I asked him if he wanted to see how to make bread this afternoon, he was all for it. So we got to work. He was right up against the kitchen island, watching every move (as I explained it). I had to get him to step back a couple times, as he was encroaching on my workspace. When I got to the kneading phase, he wanted to give it a try himself, and I let him have a couple shots at it. He probably would have done better with a stool, as he didn't have good leverage to push the dough into the table, but he did get floured up for the occasion.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3ewxJPN4Rgf8x7o1d8b8LDiYF4Hi6KNxI3Kb6mhQvgEKFHJoYfYQ0m8w3zQaM-crVzMQyGbhP6c9OhPbz-Q_2EwUEqX3YLvhRy1hImQ87NY4Iw1yfc2T-YHZYUJN8ZcO5uVT0tnL7cm1tlsz9KJy8ye2_U2Z0ehT2UNR1iSHxLyg4VA6x/s4032/Charlie_flour.jpeg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3ewxJPN4Rgf8x7o1d8b8LDiYF4Hi6KNxI3Kb6mhQvgEKFHJoYfYQ0m8w3zQaM-crVzMQyGbhP6c9OhPbz-Q_2EwUEqX3YLvhRy1hImQ87NY4Iw1yfc2T-YHZYUJN8ZcO5uVT0tnL7cm1tlsz9KJy8ye2_U2Z0ehT2UNR1iSHxLyg4VA6x/w300-h400/Charlie_flour.jpeg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Flour-y language</td></tr></tbody></table><br /><p>The pizza crusts are highly irregular, even when tossed a little bit (I’m no expert), but “occasional flaws reflect the handmade nature of this product.” Charlie’s crust started out triangular, then became more trapezoidal as I spread it out. Mason’s was heart shaped. Wife and I both ended up with irregular shapes, but “<a href="https://farmanor.blogspot.com/2014/11/the-knights-of-irregular-polygonal.html" target="_blank">irregular is normal in the Strange Lands</a>.”</p><p>Had I thought it out better, I would have rearranged the oven racks to put the cooking pizza up top and the pre-bake crust on the next shelf, but doing things one at a time worked out. In a slightly inspired move on my part, I cut up some liverwurst and put it on Charlie’s pizza (Mason sampled a leftover piece and opined that cooking liverwurst improves the taste). In any case, everyone got what they wanted, and everyone was happy (and that’s nearly a miracle at FAR Manor).</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOd2rSd_rbLd7VXAQ9UujDYwXJ6dUQmXW4V9WogOVYFyMxS-xmzJGzOEJ2f964r2rFAhU_5JL8X2gvBngSDT36BSs5vD_sUciyNZjVZ_bMpZYsl-GjJVHLCbdn5rFJbWNgMMnVApeHRtmrZtM3K8lk9LnHrc42WMVNiHyOmljs0JBObJNS/s4032/Custom_pizza.jpeg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOd2rSd_rbLd7VXAQ9UujDYwXJ6dUQmXW4V9WogOVYFyMxS-xmzJGzOEJ2f964r2rFAhU_5JL8X2gvBngSDT36BSs5vD_sUciyNZjVZ_bMpZYsl-GjJVHLCbdn5rFJbWNgMMnVApeHRtmrZtM3K8lk9LnHrc42WMVNiHyOmljs0JBObJNS/w300-h400/Custom_pizza.jpeg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Everyone got what they wanted</td></tr></tbody></table><br /><p>Clockwise, from top left:</p><p></p><ul style="text-align: left;"><li>Plain cheese (Mason)</li><li>Vegan cheese and liverwurst (Charlie)</li><li>Mushrooms, onions, peppers, and pepperoni (me) (pepperoni is under the cheese)</li><li>Mushrooms, onions, and peppers (wife)</li></ul><p></p><p>I was tempted to make mine Hawaiian (ham and pineapple), but I don’t think we have any pineapple. In any case, everyone has leftovers for tomorrow or whenever. I’ll enjoy mine at lunch.</p><p><br /></p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-12914603602925186452022-09-08T07:00:00.003-04:002022-09-28T23:59:44.483-04:00Cobbled together<p>Wow, has it really been four years since <a href="https://farmanor.blogspot.com/2018/08/give-peach-chance.html" target="_blank">I discovered the peach tree</a> next to the composter? Not like there was much more to say. The peaches were hard, and the critters stole the entire bunch every year as soon as they started getting ripe. We never did get around to moving it, either.</p><p>But, after the clearing out we did, it started getting more sun. I figured there wouldn’t be any this year; the tree started blossoming during a warm spell in January, and you can guess what happened a week later. But later on, as I went out to dump scraps in the composter, I saw it had about a dozen hard fruits on it.</p><p>As August rolled around, we moved Chief (the outdoor dog) next to the tree to keep critters away. I started checking every couple of days, felt them begin to soften, saw them start to turn. One fell off, and I took it inside to ripen up in the kitchen window.</p><p>A couple weeks ago, the composter run showed me a batch of ripe and nearly ripe peaches! I pulled up the front hem of my T-shirt for an impromptu basket, and harvested the lot before the critters could.</p><p>Wife stuck them in the fridge, with assurances that she would make them into something. She was leaning toward peach ice cream, using goat milk so Charlie could have some, but goat milk prices are getting to the point where it might be worth having our own goats. Then Mason got the ro, then the wife did. I considered freezing them (i.e. the peaches), so they would be at least usable for <i>something</i> when we got to them.</p><p>Last weekend, she got them out and got going on some peach cobbler. It wasn't huge, because we only had about 10 to work with, but there was enough to go around.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHJNXE4-mwgoSF07WH4fxqXvhs0r06DAZK_pFnBtIpHmp4vAIzZWkS8Iqva3zq3U4m1fufIt3Gr3WxKTZdPSf_Ui_V8osRvh8AkwOwwX-bCpbYpvHT4lBtDEiLb8IZ2rhjlP1MGL3_9hwdUkAWzR9PKRMC1C2jVdwdx_4IgzeVJkxOuaFc/s4032/peach_cobbler.jpg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHJNXE4-mwgoSF07WH4fxqXvhs0r06DAZK_pFnBtIpHmp4vAIzZWkS8Iqva3zq3U4m1fufIt3Gr3WxKTZdPSf_Ui_V8osRvh8AkwOwwX-bCpbYpvHT4lBtDEiLb8IZ2rhjlP1MGL3_9hwdUkAWzR9PKRMC1C2jVdwdx_4IgzeVJkxOuaFc/w480-h640/peach_cobbler.jpg" width="480" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Tastes as good as it looks!</td></tr></tbody></table><br /><p>The tree itself is still rather spindly, so I’m still thinking about transplanting it (assuming we get a winter that’s more than Long November again). And I should have grabbed some vanilla ice cream to go with the last of the cobbler.… but it’s pretty darn good on its own.</p><p>So even FAR Manor is capable of pleasant surprises. Too bad they’re so rare.</p><p><br /></p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-45029942596503221962022-09-05T07:00:00.006-04:002022-09-07T22:10:08.099-04:00Adventures of a #techcomm Geek: Go API chapter 2, “No ReST for the weary” (edit#2)<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left;"><tbody><tr><td style="text-align: center;"><a href="https://1.bp.blogspot.com/-1MBdVU8k8xs/YBOPcBlcQCI/AAAAAAAAG7U/IFXHpqGu8r8-O5gH11fiRPeVORiWydoMQCNcBGAsYHQ/s400/writer.png" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="228" data-original-width="400" src="https://1.bp.blogspot.com/-1MBdVU8k8xs/YBOPcBlcQCI/AAAAAAAAG7U/IFXHpqGu8r8-O5gH11fiRPeVORiWydoMQCNcBGAsYHQ/s320/writer.png" style="padding-right: 0.5em;" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Image source: <a href="https://openclipart.org/detail/193014/man-writing" target="_blank">openclipart.org</a></td></tr></tbody></table><p><a href="https://farmanor.blogspot.com/2021/02/adventures-of-techcomm-geek-go-api.html" target="_blank">Last time</a> I had to deal with an API, it was pulling a vendor’s documentation into our own system. Now, I have to document our own APIs.</p><p>OpenAPI, formerly known as Swagger, is quite popular in the ReST API universe these days. And why not? One source builds a website, the hooks, documentation, and everything. At least online. If you want to provide a PDF document describing the API, though, there’s a little more to it.</p><p></p><ul style="text-align: left;"><li>First, all those <span style="font-family: courier;">definition</span> and <span style="font-family: courier;">summary</span> strings need some attention. Where developers involve the technical writers in the process makes a huge difference in effort (at least on the writer side).</li><li>Second, there’s more to documenting an API call than the definition and summary strings. There are path variables, query variables, examples, and the list goes on.</li></ul><p></p><p>Fortunately, there are several utilities that extract documentation from an OpenAPI file. For my purposes, <a href="https://github.com/Mermade/widdershins" target="_blank">Widdershins</a> works best—it produces a complete Markdown file—although it’s nowhere near ideal.</p><p></p><ul style="text-align: left;"><li>One issue was definitely not the fault of the tool. The developers told me of a dozen categories (or <span style="font-family: courier;">tags</span> in OpenAPI parlance) that didn’t need to be documented for customers. Widdershins groups all API calls with the same tag under the same section, and that helps a lot.</li><li>The second issue could be either Widdershins or my personal preference. I didn’t like the order that Widdershins presented data for each method. There were some other minor issues as well.</li></ul><p></p><p>I had a big wad of text that was my nail, and <i>awk</i> once again is my hammer. I started pounding. I did consider using a YAML parser for a brief time, but realized Widdershins did a lot of busy work for me. It actually does a pretty good job of building a Markdown document, describing all the method calls and schemas. If only there was a way to fix the presentation order, it would be perfect.</p><p>My first goal was to reshuffle the internal sections of each method to get them in the order I wanted. Deleting the unneeded groups, I reasoned, was a one-time thing that I could deal with myself.</p><p>My script worked the first time, but scrambled a bunch of things on the second attempt. Worse, doing the search-and-delete on those unneeded sections took more time and care than I’d anticipated. I needed a re-think.</p><p>Fortunately, a <a href="https://youtu.be/GNyQxXw_oMQ" target="_blank">Computerphile interview with Brian Kernighan</a> (the “K” in <i>awk</i>) came around, right when I needed it. It gave me… if not the key to my problem, a map to the key. In a nutshell, Dr. Kernighan advocates against large, monolithic <i>awk</i> scripts. His 1986 paper <a href="http://cm.bell-labs.com/cm/cs/cstr/128.ps.gz" target="_blank">Tools for Printing Indexes</a> describes his approach as:</p><blockquote><p>…a long pipeline of short <i>awk</i> scripts. This structure makes the programs easy to adapt or augment to meet the special requirements that arise in many indexes. </p></blockquote><p>This approach can also be easier to debug, as you can replace the pipeline with temporary files and verify that the output of one stage is correct before feeding it to the next stage. Each stage refines the input further.</p><p>So I split the monolithic script into two medium-size scripts:</p><p></p><ul style="text-align: left;"><li><b>Stage 1a</b> (<span style="font-family: courier;">weed</span>) fixes headings, weeds out unneeded HTML markup (mostly <span style="font-family: courier;"><a name="x"/></span> tags), and gets rid of those unneeded sections. Having less cleanup already makes this approach worth the effort.</li><li><b>Stage 1b</b> (<span style="font-family: courier;">shuffle</span>) re-orders the remaining method descriptions. I learned that the input order is important for making this work; so if future versions of Widdershins move things around, it could break the script and I would need to fix it again.</li></ul><p></p><p>It takes maybe a second to process the raw Markdown through both stages under Cygwin, which is noticeably slower than a shell under a native POSIX system. I expect my 8 year old iMac would be nearly instantaneous.</p><p>Now that I’ve cracked the code, so to speak, more stages are coming.</p><p></p><ul style="text-align: left;"><li><b>Stage 2</b> throws out the schema definitions that none of the remaining methods refer to. A pair of scripts identify which schemas needed to be kept, then weeds out the others.</li><li><b>Stage 3</b> fixes cross-references (mostly to schemas). The monolithic Markdown file uses a URL of the form <span style="font-family: courier;">#schemaxyz</span>. Since the ultimate goal is to split the single Markdown file into topics, those URLs need to point to the eventual file name instead. A trio of scripts create file names that correspond to the URLs, replace the original <span style="font-family: courier;">#xyz</span> name with the file name, then shuffle the schema’s description to the top of the topic.</li></ul><p></p><p>These stages take another second to process… so 13,000 lines of YAML to monolithic Markdown file is about two seconds. The <span style="font-family: courier;">mdsplit</span> script, that splits the methods and schemas into topics and builds a Lightweight DITA (LwDITA) bookmap, takes less than ten seconds to complete. So I’m now at the point where it’s easier to regenerate the entire document if I run into a scripting issue, instead of pushing through the problem. Uplifting the LwDITA to full DITA takes maybe a minute. After the uplift, another script fixes the extensions, changing <span style="font-family: courier;">.md</span> to <span style="font-family: courier;">.dita</span>, and fixing the cross-references.</p><p>At this point, I can focus on adding value: adding metadata, grouping related schema definitions, and the like. If I need to regenerate this thing again, I need only run the shell scripts that conduct the Geek Chorus.</p><p>Going forward, I’ll need to be able to compare versions, so I can replace topics with actual content changes, or add new topics. At that point, I could hand things off and intervene only when the input changes enough to make a difference. Or, we might decide to ditch the PDF entirely, and that would make things far easier on everyone.</p><p>Techcomm geeks never worry about automating themselves out of a job, by the way. There’s always a new presentation format, or new source document formats, or many new ways to streamline workflows. Handing off a system is a triumph; it means we have more time to focus on the next thing.</p><p><b>Edited 5 Sep</b>: I didn’t realize I’d pasted this out of Logseq before going through it and fixing some things. Now we’re up to date.</p><p><b>Edited 7 Sep</b>: All the tweaks have been made, and I now have a turnkey system.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-12679038771168717782022-08-28T22:47:00.001-04:002022-08-28T23:17:47.130-04:00LeverageEvery few years at FAR Manor, one of the A/C units begins a horribly loud rumbling. The first time this happened, the wife called an HVAC dude to see what was W0RnG!one… turned out a mouse had hopped into the squirrel cage and got centrifuged to death.<div><br /></div>
<div>The same thing happened again, not two weeks ago. An adult mouse weighs maybe 2/3 ounce on average, and that tiny bit of weight in the A/C motor can shake the whole freeking manor! Talk about leverage…</div><div><br /></div><div>We've run out of money, and the wife continued to complain about the noise, so I got Mason to come upstairs with me on Saturday afternoon as the gofer. I had hoped the A/C fan was horizontal, and would let me easily remove any obstruction or imbalance… but no. It's vertical. I had Mason fetch me a mirror, but realized I could use my phone (with flash on) to see what and where I needed to grope with my gloved hand.</div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzDtm3kx9kMtyanNku0bMnZ7QmssvijWvb89Z0khRZuQwN8T137p1iTFqtX7VBF0wvg3NQEI7hUCfb9f4eZ70nhitDDNJ1mOkfYX3RVXcNPkjoBDhMMSBEj-WExEr6UnsivUK1cBfhJx5BQFbpjIrZEg-vzUOC4cmM1qM9rG-pbaGspGjp/s4032/Mouse_in_AC.jpeg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzDtm3kx9kMtyanNku0bMnZ7QmssvijWvb89Z0khRZuQwN8T137p1iTFqtX7VBF0wvg3NQEI7hUCfb9f4eZ70nhitDDNJ1mOkfYX3RVXcNPkjoBDhMMSBEj-WExEr6UnsivUK1cBfhJx5BQFbpjIrZEg-vzUOC4cmM1qM9rG-pbaGspGjp/s320/Mouse_in_AC.jpeg" width="240" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Rubber gloves highly recommended</td></tr></tbody></table><br /><div><br /></div><div>After a couple attempts, I removed the imbalance and dropped it into a garbage bag before putting everything back together. And lo and behold, no more shaking or rumbling.</div><div><br /></div><div>Ew. Major ew. But dealing with the (increasingly infrequent, thank God) Charlie accidents is little better. I hope Mason is learning how to fix things on his own, too. He has grandiose ideas of how he and his friends are going to live in style, but any money you save on a service call is available for fun stuff.</div><div><br /></div><div><b>EDIT</b>: And you can dang well bet, I treated myself to a bowl of Extreme Moose Tracks after that. I deserved it.</div>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-75101684954479873022022-08-04T22:09:00.003-04:002022-08-04T22:09:39.916-04:00New granddaughter!<p> Check out G3, for lack of a better blog-name right now…</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5fFHWSlXL5i-ynj_eorN2Cy4PBDMQRWsPxunwEJvI-ytlTXBbIOv9aT0S3n6MPh7JQ0Cdm_cL0fB8YK0fZoH3A7YsITDOaYIZnyGwMC0nVvuamUBObGQaOSowZbK5rYK2WVBOz_vAbIzDAUno5Nwgev8n3FWrFO0CF1mB3FAbYTTHDglA/s4032/G3.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5fFHWSlXL5i-ynj_eorN2Cy4PBDMQRWsPxunwEJvI-ytlTXBbIOv9aT0S3n6MPh7JQ0Cdm_cL0fB8YK0fZoH3A7YsITDOaYIZnyGwMC0nVvuamUBObGQaOSowZbK5rYK2WVBOz_vAbIzDAUno5Nwgev8n3FWrFO0CF1mB3FAbYTTHDglA/w480-h640/G3.jpg" width="480" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">I haven’t seen her awake just yet.</td></tr></tbody></table><br /><p>Man, it's so hard to remember how tiny they are when they’re newborns. After hoisting Charlie all the time, she’s like a feather. But that won’t last long.</p><p>AJ is (so far) very much the Big Sister, and even a little territorial. Charlie thinks she’s fascinating, and gets excited when “the baby is coming to our house.”</p><p>By the by, my skin isn’t blotchy. There was sunlight coming in through the window to my right, and between it and the overheads the shadows got funky.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com1tag:blogger.com,1999:blog-12954391.post-11677535950629414962022-07-16T22:39:00.002-04:002022-07-16T22:39:33.246-04:00Pain in the Drain<p></p><p>Ah, Friday. The day you come downstairs after wrapping up reports and shutting down the work laptop for the weekend. Two days of rest, relaxation…</p><p>And then you see the contents of the kitchen cabinets, usually under the sink, sitting in a big box on the floor. “The dishwasher is leaking,” the wife said.</p><p>That didn’t really make sense to me. There’s a cabinet wall between the cabinet and the dishwasher. If it was the dishwasher leaking, wouldn’t it be coming out in front of the dishwasher? But if the cabinet was wet, it was either the drain line leaking, or the water intake line.</p><p>So I got my electric lantern to light up the whole intersection of Under and Sink. Wife started the dishwasher, which happened to be on the drain cycle… and water started shooting out the hole where the drain line went through!</p><p>“So what is it?” she asked.</p><p>“Most likely, the drain line itself has a hole in it,” I ventured. “But if the drain is at the top of the dishwasher, it could be loose there and shooting water across the drain line.” Which didn’t really sound plausible to me, but it’s unusual for a problem at FAR Manor to actually be the first idea I have.</p><p>But unusual doesn’t mean never.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi130brETBF4Kd535-SZYKK6VX1zGy0Vh8drggPQloDkPhumHWkN2lkN4xmr7vV75ZsqNcdgU7DzM2HXHcwlLfMwxZpgMKD6RyPCZVugJcYAIp4jnAxzaPk1rx-FQ_Iyis7zK44hGnx5MBHCOfBKoWFZJTQMOqobO23MBu2iX1Vzpwa-BGg/s4032/drain_line_holes.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi130brETBF4Kd535-SZYKK6VX1zGy0Vh8drggPQloDkPhumHWkN2lkN4xmr7vV75ZsqNcdgU7DzM2HXHcwlLfMwxZpgMKD6RyPCZVugJcYAIp4jnAxzaPk1rx-FQ_Iyis7zK44hGnx5MBHCOfBKoWFZJTQMOqobO23MBu2iX1Vzpwa-BGg/w300-h400/drain_line_holes.jpg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">When a drain line looks like this,<br />it’s time to replace it.</td></tr></tbody></table><br /><p>So this morning, I dug up the info about the dishwasher, in case it mattered, then disconnected the intake and drain lines under the sink so we could pull the dishwasher out. As with most things at FAR Manor, it fought until we found the little tabs just behind the tile, holding it in. Pushing down with a screwdriver let them clear the tile and we dragged the body of the dishwasher into the <strike>sun</strike> LED light of the kitchen. The drain line went all the way down and <i>under</i> the dishwasher. Wife suggested I look under the front, and I found the line coming out a front-facing outlet and curling back. (She was hitting on all cylinders with the ideas this afternoon.)</p><p>With drain line and model number in hand, I rolled to Home Despot. Charlie insisted on coming along, and took several micro-naps on the way there and back. Turns out dishwasher drain lines are universal, so I got one and a can of wasp&hornet bomb (more on that shortly). We needed groceries, but Charlie was ready to go home and looked it.</p><p>I had some trouble reaching the under-sink drain connection, because the original drain line had an elbow that shortened the turnaround. I had <i>just</i> enough. If I have to pull the dishwasher out again for any reason, I’ll grab a hole saw and put a lower hole in for the drain line—that should give a good foot of slack. The wife wondered if we could put something around the drain line to prevent future wear-through, so we took the piece of rubber we had to cut off the dishwasher end (the universal line has step-down sizes, you cut to the size you need) and slipped it over the other end and pushed it into the hole. Maybe that will keep it happy.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWiMPuC_vxJp76gKsIH42yoX1c21J8UuMVYEeIHURYXeVR6e5J0agoaOG5rP8whTAxYkLlrfgwyLofQiHNXHs14yBUoJVeL0Qv-4_wzCMawdRdBfWs_dFHgsJAIT4cypQbbly2UAU6fbz4DMfXqRYUObldduYi68G-fxj2D5aPPTXXOWDB/s4032/drain_line_collar.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWiMPuC_vxJp76gKsIH42yoX1c21J8UuMVYEeIHURYXeVR6e5J0agoaOG5rP8whTAxYkLlrfgwyLofQiHNXHs14yBUoJVeL0Qv-4_wzCMawdRdBfWs_dFHgsJAIT4cypQbbly2UAU6fbz4DMfXqRYUObldduYi68G-fxj2D5aPPTXXOWDB/w300-h400/drain_line_collar.jpg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">A crude attempt at not having to do this again</td></tr></tbody></table><br /><p>So we ran an empty load… and water started coming out from under the dishwasher. Looking underneath, I could see it was shooting out the drain connection at the dishwasher. I replaced the clip-type hose clamp with a worm gear-type, and that (and a few towels) took care of the problem.</p><p>Groceries have been got, and the kitchen floor is still dry, so it appears we have saved ourselves a crap-ton of money on a plumber. Getting on and off the floor is a pain at my age, but at least I can do it.</p><p>Now that it was dark, it was time to save a crap-ton of money on an exterminator (they quoted us $225 for this job). Hornets built a large nest above a gable window, and I had to get up on a ladder for even a nominal “27' jet spray” to reach it. I hope it worked, but even with a flashlight trained on the target, I’m not sure the spray reached it. I guess we’ll find out tomorrow. If not, I’ll get the extension ladder and get a lot closer than I’d really like. I hope it doesn’t come to that.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-6243427383827769102022-07-01T07:00:00.008-04:002022-07-01T07:00:00.218-04:00Our newest resident<p>Pop, our orange cat, disappeared a few weeks ago. Missing and presumed… you know the drill. :-( KT, the shy and retiring cat, has been slightly friendlier since.</p><p>The wife is a dog person, but one of her friends was trying to unload some kittens. So…</p><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; padding-right: 0.5em;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE_xisKOpsFwDPVEnTtUWB_YcsqdHC7vnVAjKruNfu-uZFFlgqkrDAeSJ1QEDsTHJDR-VmHqduRoataxOhsDjcjI9a3uEDybVgZs_Pphhn9_2beGsv9kBdGy-xYacKuts7pTu3xo8i8EOtotPsk1GI9qCtG2E3oUARi6xcZ4ThmxXHNcRN/s4032/Miya.jpeg" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE_xisKOpsFwDPVEnTtUWB_YcsqdHC7vnVAjKruNfu-uZFFlgqkrDAeSJ1QEDsTHJDR-VmHqduRoataxOhsDjcjI9a3uEDybVgZs_Pphhn9_2beGsv9kBdGy-xYacKuts7pTu3xo8i8EOtotPsk1GI9qCtG2E3oUARi6xcZ4ThmxXHNcRN/s320/Miya.jpeg" width="240" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Hiya, I’m Miya.<br /></td></tr></tbody></table><p>Charlie, who loves pretty much anything that moves, was totally captivated. The wife suggested that I let him name her… so we were hanging out on the porch (where the kitten lives), and I asked him, “What do you want to call her?”</p><p>Charlie thought it over for a long moment, then said, “Miya.” (MEE-ya)</p><p>“OK… is that M-I-A, or M-I-Y-A?”</p><p>A briefer pause. “Y-A.”</p><p>Well, it’s slightly more creative than the name I gave a cat at that age: Ia (EYE-a). And I think I did better than Other Brother, who named his cat Yo-Yo. But I digress.</p><p>Miya is already nearly twice the size of this picture. She’s thriving, and I hope she’ll do well as a porch cat. She has already figured out how to get up on the table.</p><p>Rosie, aka Doofus, aka Stupidog, is (as one might expect) confused. She goes over to the doors to the porch, and looks for Miya. Meanwhile, the kitten is up on a chair near the door, watching the dog, and hops down right in front of her. This usually sets off a startled bark and growl, as Rosie scuttles back from the door. She followed Mason upstairs yesterday, trying to stay relevant. I brought her ball up, and she was happy to fetch it for a bit.</p><p>I did bring Miya (and her gear) upstairs earlier this week. I probably won’t try that again, for a while. There was more than enough cat litter to vacuum up once I knocked off work and took everything and everyone back downstairs. Then again, Charlie stayed close and didn’t try to slip downstairs to annoy Mason or get into stuff he shouldn’t… maybe I can put Miya’s litter box in the bathroom? That would help to keep Charlie from playing in it while I’m on a call. Scooping would be simple, with the toilet right there.</p><p>Miya has a nice, loud purr, and lets it loose when someone (even Charlie) is holding her. Going out to the porch is just as important (in Charlie’s mind) as going outside, now. Well, I can think of much worse things than hanging out with a kitten and a child. (Much worse, being the illegitimate supreme court.)</p><p><b>Do you have some new critters? Sound off in the comments!</b></p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-53722072152291973962022-06-21T22:38:00.002-04:002022-06-21T22:38:58.535-04:00Wrong Solstice for a bonfire<p>With the stingy rainfall, and temps well past 90°F lately[1], maybe creeping into triple digits south of Sector 706, you would think it’s summer.</p><p>Well, as of today, it is. Top of the year to y’all!</p><p>I guess between Memorial Day and Independence Day in the US, we kind of leave the solstice unmarked. On Termag, they call it High Summer, and it’s a week-long holiday. Sorcerers who can and desire travel to Queensport to the annual Gathering of the Conclave for two weeks of business, learning, hanging with old acquaintances (not to mention the occasional Conclave Romance), and cramming their apprentices’ heads full of knowledge.</p><p>But I digress. The wife calls this “hay baling season,” and is living the highest honor a farmer has (out standing in her field). Machinery makes this a much less labor-intensive undertaking than in the past, but all that machinery is complex and still needs eyes and hands on it[2]. Modern hay balers in particular are a lot more complex than you might expect (the manual is nearly an inch thick, and not large type). And, you need a tractor to pull it. And a cutter. And a rake (a/k/a “fluffer,” since it fluffs the hay into neat rows so the baler can pick it up). And maybe a truck and trailer to haul the hay to its resting place. And another tractor with a hay fork, to pick up the bales[3] and put them in the barn until they’re needed come winter.</p><p>So… to this afternoon. The wife was out standing in her field, when she saw smoke from the direction of another farm, about a mile away. “Not too smart,” she remarked, “it’s too hot and dry to be burning brush.”</p><p>This evening, she got a call from one of her helpers. “They were baling at _____’s,” he said, “and their baler caught fire. It torched the tractor, and half the field, too.” <i>Yipe!</i></p><p>The wife points out that hay is exothermic (or “goes through a heat,” as she puts it) as it drys. It’s the main reason she repeatedly tells her helpers to not leave a partial roll in the baler. Her speculation: the people at the other place left a partial roll in the baler overnight, letting it get nice and hot, then that + the heat of the day + friction + the new hay being scooped into the baler = spontaneous combustion, and things got a bit hotter than anyone wanted. Or it could have been a baler malfunction, who knows? I doubt anyone will do a post-mortem to find out.</p><p>So think about the farmers, this time of year. Some have lost cattle, others are dealing with fires, and the rest are dealing with all the crap (literal and metaphorical) they have to encounter. Every day is Monday on a farm… and it’s nowhere near August yet.</p><p>Since that <a href="https://huggingface.co/spaces/dalle-mini/dalle-mini" target="_blank">DALL-E mini</a> thing is all the rage right now, I’ll leave you with its impressions of “hay baler on fire.” [4]</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-L6u_eK_-8Rc1CvjP2tf-twunoKORPtSya6sfGyFFXLK7VrGEbhmCyobg8mcUjkJ2NulcvIkZVUzwwkvxkxDnqLOygh4acNpIG9nk7k44AFy5II0lOPxj0c8HLRguSbNQh-MioKQJyavQmq0VDaUlbOwFGwaOkkvPDvp3PT24QfUvQ2FG/s922/dallemini_2022-6-21_22-18-11.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="922" data-original-width="768" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-L6u_eK_-8Rc1CvjP2tf-twunoKORPtSya6sfGyFFXLK7VrGEbhmCyobg8mcUjkJ2NulcvIkZVUzwwkvxkxDnqLOygh4acNpIG9nk7k44AFy5II0lOPxj0c8HLRguSbNQh-MioKQJyavQmq0VDaUlbOwFGwaOkkvPDvp3PT24QfUvQ2FG/w534-h640/dallemini_2022-6-21_22-18-11.png" width="534" /></a></div>
<hr align="left" width="30%" />
<p>[1] I think Sector 706 is getting the good end of climate change, so far. Despite the current hot weather, we’ve been not nearly as hot as many surrounding regions… not to mention out west.</p><p>[2] So the wife has about three helpers. I joke about her hanging out with sweaty men, but she’s sweating just as much.</p><p>[3] Round bales are nearly 6 feet (about 1.5m) diameter, and about 4 feet (1.2m) wide. The only way you’re going to move those by hand is if you can roll them downhill.</p><p>[4] The top-center image has a vague resemblance to our baler.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com1tag:blogger.com,1999:blog-12954391.post-72302944276432286532022-05-24T07:00:00.003-04:002022-05-24T07:00:00.228-04:00AJ, office buddy<p>One thing about working at home, you don’t have so many distractions. But sometimes, the wife has to go do something on the farm while she also has AJ through the weekdays (while Daughter Dearest is teaching). So that means AJ comes upstairs on occasion, to hang out with Granddad while he’s working.</p><p>AJ has figured out the whole office deal from watching me. The “console” space heater I used to keep my legs warm through the winter became her “desk,” and she has a stool for a chair.</p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy9sHaGrw6xMHV2Jjgwh6FWDtUpS_mPlY3tfDups4Je8MywHt1gc6BmLlK7z8a1kpmRCiizSmJSLzA0Nyttzzm3gRCussXN8VSFaQBk26zrKg1qprmH-EmTy0W698H7ADyi_RZfJndKQGo0OIZeTNLkNX_K3YdjpGdnp6jF3GuPaXIylTi/s4032/AJ_office_drone_3.jpeg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy9sHaGrw6xMHV2Jjgwh6FWDtUpS_mPlY3tfDups4Je8MywHt1gc6BmLlK7z8a1kpmRCiizSmJSLzA0Nyttzzm3gRCussXN8VSFaQBk26zrKg1qprmH-EmTy0W698H7ADyi_RZfJndKQGo0OIZeTNLkNX_K3YdjpGdnp6jF3GuPaXIylTi/w300-h400/AJ_office_drone_3.jpeg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">I haven’t even finished breakfast,<br />and I have to answer this email!</td></tr></tbody></table><br /><p>Sometimes, she takes the call.</p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXT8ZTHqD78RU5NQvbZ7dvPZPglVl_LfTYrOn_OK5S9PM34A-bVW0Y7ClAnzNzKSJQRjBNAxYEabbOpbDl7Tl5fVDfqsYWMZxijOtVeV9_7obtmGr7f5ggrlk87PchFCO9sABF3D9Y3k9omSpyluGJyzqktp9Z43hD9AYTWDjJjcUcSuDk/s4032/AJ_headset_2.jpeg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXT8ZTHqD78RU5NQvbZ7dvPZPglVl_LfTYrOn_OK5S9PM34A-bVW0Y7ClAnzNzKSJQRjBNAxYEabbOpbDl7Tl5fVDfqsYWMZxijOtVeV9_7obtmGr7f5ggrlk87PchFCO9sABF3D9Y3k9omSpyluGJyzqktp9Z43hD9AYTWDjJjcUcSuDk/w300-h400/AJ_headset_2.jpeg" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Hello. Yes, this is Tech Support.</td></tr></tbody></table><br />
<p></p><div>And if I get out of my chair, for more than a second, guess what happens?</div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8xSx3Vx_6aUx0vwCfT5tMBAdrmrIUb4_OdCWhWz1a2Na9pJmImmqudMqSH3XInhwT2lTIAN-usIPRotOpZeug1y5rxyHxmzDfO1xCBewwqMe_1YmOoiH7bKjgrDjdSfeIS6onP8SOALxXARiNzuqbi4w6qiGV0MOr0OssftwGNNN5B25X/s4032/AJ_keyboard.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="3024" data-original-width="4032" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8xSx3Vx_6aUx0vwCfT5tMBAdrmrIUb4_OdCWhWz1a2Na9pJmImmqudMqSH3XInhwT2lTIAN-usIPRotOpZeug1y5rxyHxmzDfO1xCBewwqMe_1YmOoiH7bKjgrDjdSfeIS6onP8SOALxXARiNzuqbi4w6qiGV0MOr0OssftwGNNN5B25X/w640-h480/AJ_keyboard.JPG" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">You call that information architecture? Jeez. Here, let me fix it.</td></tr></tbody></table><br /><div>The school year wraps up this week. That means DD will be home, and AJ won’t be around. But Charlie will likely be my substitute office buddy through the summer.</div><div><br /></div><div><b>Who are your office buddies? Comments are open—give us some links!</b></div>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-5150585032513804872022-05-12T20:49:00.002-04:002022-05-12T20:49:52.723-04:00Months go by…<p>…and I haven’t been posting. I'll backdate a few things, starting with a trip to Mom’s for Spring Break, so scroll on down to see what’s new (or nearly new).</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com3tag:blogger.com,1999:blog-12954391.post-39423474410244503162022-04-08T20:37:00.001-04:002022-05-12T20:49:24.650-04:00Going home (bleah)<p>We got out on time, but traffic suxxxxxxed. We lost an hour overall. I was hoping to get out before the mad weekend rush, but no such luck.</p><p>I poked Mason awake on the home stretch, and suggested he get his shoes on so he could run inside when we got home. He was still dressed for Florida, and it was 41°F at home.</p><p>Charlie was still up when we got here, and laughed when I hugged him. Then I put him to bed.</p><p>The Orange Crate averaged about 30MPG on the way down, and a shade under 29MPG on the way home. Downhill and uphill.</p><p>And one final pic of the boys on the beach:</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz0Jw2PQ41MZT8X9EyzJogxT40msUY6qVN04Aua6wqkTXzA84VsIJYdUijsIxC0KLe0Uv92228-tYQeN1-tTNfgi9TCgtjiI-vWhaMmfCDfI47g7U8Ni0aF69i7gvDktxbThaABjEz05knJjPL8ynceiTut1LodZpDugn-aS_UGd6K4EbB/s4032/Beach_selfie.jpeg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="3024" data-original-width="4032" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhz0Jw2PQ41MZT8X9EyzJogxT40msUY6qVN04Aua6wqkTXzA84VsIJYdUijsIxC0KLe0Uv92228-tYQeN1-tTNfgi9TCgtjiI-vWhaMmfCDfI47g7U8Ni0aF69i7gvDktxbThaABjEz05knJjPL8ynceiTut1LodZpDugn-aS_UGd6K4EbB/w640-h480/Beach_selfie.jpeg" width="640" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">It beat being at the manor.</td></tr></tbody></table><br /><p><br /></p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-37134634492923915132022-04-06T23:50:00.001-04:002022-05-12T20:48:49.878-04:00Boogie in the surf<p>We took the boogie board to the beach today. Mason actually did pretty good.</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dzcT9bu4qbmjCtGo5VTTBNMYKerYsCTPxapfLTJz8exgDJio16tO4PJM1LNYLtDVMuU2Z-smR-t2cg' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br /><p>A guy about my age had a surfboard, and offered to let Mason try it. That was fun to watch.</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dyeB9VU5BEXAn9owBFux44-C9Mb4xTsUlP7iIJVNN-KpXaO1J_ZijT85bcsQesnXutobAewLECKAm4' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br /><p>He told me later, “I just hang out and try to get people hooked on surfing.” Nice work if you can get it, dude. :-D</p><p>After lunch (well, before lunch actually), Mason was worn out and just wanted to hang around. That was OK with me.</p><p>Supper was ribs and shrimp, and it was really good stuff. Solar brought coleslaw from KFC (which seems to be considered pretty good here), and Mom baked beans with bacon.</p><p>After supper, Mom and Mason went for a walk, and left Solar with me. He got a new-to-him truck to replace his van (it’s rusting away), and gave me the run-down on what he was doing to clean it up. Maybe we should see if we can sell The Boy’s old Acura, the way used car prices are now. Solar said the stealership offered to buy back his Civic for more than he paid for it.</p><p>Mom was talking about how much she streams stuff these days. I told her about the wife binging <i>The Good Place</i>, and we watched the first four eps. I kind of wish she had talked me into watching it with her when she started.</p><p>Raining tomorrow. We had better luck than I’d expected with weather, and it will be clear for the Friday drive home. So tomorrow afternoon, I’m going to hang with Solar while Mom takes Mason to a movie or other indoor entertainment.</p><p>Wife texted late in the afternoon... big storm at home knocked out power. I told her where to find my portable charger, and what it looks like. </p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-29734634558169256412022-04-05T21:49:00.044-04:002022-05-12T20:48:08.080-04:00Parks<p>The morning started out, um... interesting. Wife sent me a pic of her iMac screen, showing a blinking question mark over a folder. Figuring she just needed a repair, I looked up the “what to do” stuff and sent it to her.</p><p>So far, this week, we haven’t managed to go to the pool. But <a href="https://farmanor.blogspot.com/2011/06/wednesday-post-vacation-wibbles.html" target="_blank">Mom’s cat, the one Mason has tortured since he was 2</a>, decided to be nice. Mom thinks she’s trying to clean up her act enough to get to Cat Heaven.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-j34LW-FBam55nBUZE8JFbC0JJQhwG-q8-2UtaIPPnam5YA3aIIPQloDQGdsHdgi55L0iJQx9jC3Z4L0SxpsrDqa23o07yRkEvQ_3-TYXWrFULm-39dp0uW933S1sxsPWnC8h74bvIzb2xmXhjvMF7b979EcZzbBHPyuHdv_GYF2ctDn0/s4032/IMG_3587.jpeg" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-j34LW-FBam55nBUZE8JFbC0JJQhwG-q8-2UtaIPPnam5YA3aIIPQloDQGdsHdgi55L0iJQx9jC3Z4L0SxpsrDqa23o07yRkEvQ_3-TYXWrFULm-39dp0uW933S1sxsPWnC8h74bvIzb2xmXhjvMF7b979EcZzbBHPyuHdv_GYF2ctDn0/s320/IMG_3587.jpeg" width="240" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">I’m trying to enjoy this.</td></tr></tbody></table><br /><p>Mason and I hiked over to the nature park this morning, while Mom was trying to get her library card straightened out (or renewed). We talked with a woman who had a red-tailed hawk and was giving him some air. I told her about the ones that live near the manor. We walked out onto the pier, and Mason openly wondered how safe it was. I pointed out new boards, showing him that they are maintaining it. He saw some interesting marine life, anyway.</p><p>Since last time we were here, they’ve “paved” the walkways with rubber shavings, bound together somehow. I forgot to ask them whether they fused the shavings together with heat or used some kind of compound. In any case, it puts a spring in your step.</p><p>After lunch, we went to Largo Park so Mason could goof off on the playground. There weren’t many kids there, let alone any his age, so he got bored pretty quickly. Mom thought the locals were on spring break this week, but we passed a middle school that was full of cars and bicycles, and they were setting up crossing guards, so I guess it’s not <i>this</i> week, anyway.</p><p>We went to the end of Walsingham for ice cream. Kind of nice, after all the walking we’d been doing. Mason wanted to browse the shops, so I agreed we could do that and walk home, and Mom could just motor on back. We went south until we ran out of shops (where the road runs alongside the water), then north a ways.</p><p>Then I grilled some burgers on the grill out back. I had to scrub the spatula with the wire brush, trying to get some of the rust off. Mom said the burgers were perfect, so that was a win. I thought they were pretty good, too.</p><p>On the way back from the park, Daughter Dearest texted me about the wife’s computer. They still hadn’t gotten it to cooperate. DD ended up calling me; she thinks the hard drive might be fried, and mine was dying, so she might be right. I replaced mine, so I should be able to do hers.</p><p>Of course, her computer had to pick <i>this</i> week to take a dump.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-92104978090160096072022-04-04T23:00:00.010-04:002022-05-12T20:47:14.672-04:00A day (of several) at the beachMason and I went to the beach this morning.
We brought The Boy’s old skimmer board, and Mason actually did better on it than his dad did. <div><br /></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dyZaHp_R6SkPA8cabhhGTvdQ9CJA5uQwoxOJmeuLf9R0iayA43B8WQhzFx4AgrJJGD0UbdhrKb2RTU' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br /><div><br /></div><div>Mason didn’t bring a chair, but he did have a shovel… and that worked out fine.</div><div><br /></div><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTtYonVXDxq3ZoWmuNttRUDfqBQZU_zQfhWq10KmLnWvZcqWw-MzukmKxqYcIL0hlSNXElsKDqpAAnzUFbMgXqJG16VFFwe90UmXS8aGpd49YLMHIodKRitc8Tl6_1SZLmhcpswJkBmrd4Hv3IopulCVlbWqGptQiRls3dSWzNSHR35RcD/s4032/Mason_digs_in.jpeg" imageanchor="1" style="margin-left: auto; margin-right: auto; text-align: center;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTtYonVXDxq3ZoWmuNttRUDfqBQZU_zQfhWq10KmLnWvZcqWw-MzukmKxqYcIL0hlSNXElsKDqpAAnzUFbMgXqJG16VFFwe90UmXS8aGpd49YLMHIodKRitc8Tl6_1SZLmhcpswJkBmrd4Hv3IopulCVlbWqGptQiRls3dSWzNSHR35RcD/s320/Mason_digs_in.jpeg" width="240" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Custom fit!</td></tr></tbody></table><div><br /></div><div>After lunch, we went to Publix for stuff. I needed cherry juice, and there were other things we needed.
Mom heated some rotisserie chicken for supper, and did little Yukon Gold potatoes with some good seasoning. A fruit salad rounded things out. </div><div><br /></div><div>Solar came, and we all hung out for a while.
After Solar left, Mom got out the dominoes and we played Mexican Train. I won the first round, and Mason won the second after getting deep in the hole to begin with. What a comeback!</div>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-49204273394226631192022-04-03T23:40:00.015-04:002022-05-12T20:42:14.192-04:00We’re in Florida—no foolin’!<p>Well, Mason and I are. Wife can’t leave the farm unattended at the moment, and Charlie has some therapy appointments he couldn’t miss. Mason had a snit when I opted for the Orange Crate instead of the Miata, but he was bringing his dad’s old skimmer board and a boogie board, and they wouldn’t have fit. I brought the drone, in case there was a day with not much wind.</p><p>I was hoping to leave around 10, and we did manage to get out around 10:30. I've observed before, the fewer people you have in the car, the less late getting out you'll be.</p><p>I was hoping that leaving on Sunday would shield us from the traffic jams... nope. It was mostly slow from the beginning of the express lanes, almost to the rest stop just before taking the Macon bypass. Then there was another stretch of heavy traffic from Valdosta down to the state line. One or two more in Florida (im)proper.</p><p>But we’re at Mom’s, and Solar has a break!</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-17730215423550583642022-02-21T00:17:00.000-05:002022-02-21T00:17:49.044-05:00Mad cow, and Paddling about<p>More rain is headed our way tomorrow afternoon, but the weekend gave us a pair of not-quite-spring days: a fair measure of sun, and highs of 55°F to 60°F (12*C to 15°C, give or take). Between the farm and Omicron, we didn’t get out much, but sometimes you can find a little fun in the farm work.</p><p>Saturday, as any day in winter goes, the wife takes hay to the cows. Depending on the day and time, she takes either me or Mason with her to cut the strings (big round bales). But first, we (and DD’s boys) piled into M.O. the B.B. and went to a farm supply to get fencing. We went west, toward Ellijay, instead of east toward the retail district, because the local suppliers only had 100' rolls of mesh fencing and she wanted 350' rolls. As Mick Jagger sang, you can’t always get what you want, and they had 330' rolls. It mattered only in that her crew had spaced posts for the slightly longer rolls; she still needed three.</p><p>They dropped the rolls into the truck’s voluminous backside, using a Bobcat with a forklift attachment. I threw a ratchet strap over the triangular stack, and that was a wise move—the top roll flopped around a bit until it settled down tightly between the other two. There was also a couple rolls of barbed wire, and a bag of chicken feed (one of the renters has a small brood of layers). As usual, M.O. the B.B. went “pfft” at the load (pulling a one-ton trailer doesn’t affect the fuel mileage on that beast, it will give me 21MPG empty or loaded—seeing as the minivan gets 19MPG, that’s kind of impressive).</p><p></p><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEiS4xSBScgMMwxeqQiHefcMzXBAFSuxWlqOPjEDD-oT7wpp1vxwTI91279XruyJixV6mEcDFTwtUYU4zJTgYnYSuv2_ULOTCEYgjy-BHIhacel5po0AY2C2i9hVb_J7dN7x4vAWChtVHyzt_VHmjroKTxP10tcqKiRK32B4ZCxoCWaCQjbd=s3024" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img alt="Pasture cattle" border="0" data-original-height="2419" data-original-width="3024" height="256" src="https://blogger.googleusercontent.com/img/a/AVvXsEiS4xSBScgMMwxeqQiHefcMzXBAFSuxWlqOPjEDD-oT7wpp1vxwTI91279XruyJixV6mEcDFTwtUYU4zJTgYnYSuv2_ULOTCEYgjy-BHIhacel5po0AY2C2i9hVb_J7dN7x4vAWChtVHyzt_VHmjroKTxP10tcqKiRK32B4ZCxoCWaCQjbd=w320-h256" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Oh hay! Let’s roll. (My photo)</td></tr></tbody></table>The fun part was taking hay to the cattle. As the wife was doing her pastoral duty, Blockhead the heifer wandered over toward the hay barn. The gate was open, after all. (Wife has a t-shirt, compliments of DD, that has a sketch of a calf and the caption “Live like someone left the gate open.”)<p></p><p>Blockhead saw me, and froze. “What do you think you’re doing?” I asked her. She saw the open gate, and decided to press the issue by rounding the corner.</p><p>“Oh, no you don’t,” said I, and pulled the gate shut.</p><p>This is where it gets funny. Blockhead got pissed off, and bucked her way back toward the tractor. As Mik and his aunt observed, cattle are born knowing all profanity, and Blockhead used quite a bit of it through her body language.</p><p><br /></p><p>That evening, wife made it clear that there were Things That Had To Be Done on Sunday afternoon. She repeated it before church… and Mason, somehow, was surprised to hear about it after church. This has been a long-standing trait on the wife’s side of the family, acting shocked that reality doesn’t conform to their whims, and Mason has it down pat.</p><p>Stuff to be done included:</p><p></p><ul style="text-align: left;"><li>Raking debris out of a chokepoint in a drainage ditch</li><li>Taking feed to the renter’s chickens (I don’t know how we got roped into doing that)</li><li>Running a couple more rolls of hay out to the cattle</li><li>Clearing the debris filter over the pond’s overflow pipe (a wire crate—my idea, and a rare idea of mine that the in-laws actually acted on)</li></ul><p></p><p>Wife was like, “How are we going to get those fence rolls out?”</p><p>I suggested, “Use the hay spike on the tractor. Slide it into the hole in the middle and pull it out.”</p><p>For once, she realized I had come up with a Good Idea.</p><p>So I pulled the rolls out to the tailgate, and she carefully slid the spike in far enough to hoist the fence roll. It turned out that if I used gloves instead of bare hands, I could pull the rolls out to where she didn’t have to worry about catching the tailgate with the bottom spike. That only happened once, and the dents were already there on the tailgate. M.O. the B.B. is a work truck, not a TPC. A few scratches and dents are to be expected. In this case, I don’t think there was any damage.</p><p>Mason wasn’t needed for the hay part, although Charlie came along. He likes to bring a construction-equipment toy and play in the dirt/hay while his parents handle the details. Given the coming rain, she dropped much of one roll between the gate and haybarn, so we might have some non-mucky footing through the coming week.</p><p>After that, it was Mason’s turn, He was ranting that we gave Charlie the R/C truck <i>he</i> wanted, although he had guided me through the Zon’s pages to the one we got for him. (We missed the two-year anniversary of <a href="https://farmanor.blogspot.com/2020/02/done.html" target="_blank">Charlie’s adoption</a>, but made up for it.) But he came along anyway. He sat in the truck while I cleared the drainage ditch (a small tipped-over tree is catching debris at this particular juncture), but helped a lot with the chickens. The johnny boat “somehow” got bashed in at one corner of the stern, and tore it open. Mason opined that we could hammer it out and patch it with Flex Seal, and that might actually work, but it didn’t solve the immediate issue. So we clattered back home; I grabbed the inflatable kayak, but the pumps were scattered around. Wife finally found the 12V one, and I found the 120V one plus the hose in the camping box (and I don’t know why they ended up there). The hand pump is behind a pile of yard tools in the big garage, as I learned after the fact. Wife made one of her usual comments about putting stuff away, and she was right for a change. I’m not sure why it happened, though.</p><p>Anyway. We clattered back down to the pond, and I inflated the kayak while Mason did a little fishing. He got a nibble or two, but no fish. But he was good and ready to hop in when I told him to help me carry the kayak down to the water. We put it next to the dock, took off our shoes, climbed in (one at a time), and I found being slightly off-center was an invitation to ship water. But we paddled out to the overflow pipe, and I cleared off the debris while Mason kept the kayak away from the drain handle.</p><p>But we weren’t done yet! We paddled over toward the pump house, where the overflow feeds the pond. Remember, the air is cool, and the water is <i>cold</i>. Mason got the worst of the dripping off the paddles. But we did get a good (if algae-encrusted) five-gallon bucket out of the pond, floating there since Kobold had let it fall in.</p><p>We got back to the dock, clambered out, and Mason decided he wanted to solo around the pond. He had been helpful, so why not? He got in, we maneuvered back around the dock, and of course I got pics (and video).</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dzoZhrQ8-nOV7RJDfurnBNHOsp_N7XP1lpN0xKE76vyju7Ws-A8e4rIzqveJhPG1sIWqw7XLskjYBY' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br /><p>Wife didn’t approve of me letting him solo in the pond, but that kayak has five air chambers—any one of which would keep him afloat long enough to get the fifteen feet (five meters) to shore. Not to mention the seats, attached only with two clips and velcro, and that would have made seven levels of redundancy (two seats). It certainly won’t hurt to bring a couple of floatation devices for future trips, though. And a couple of towels.</p><p>After deflating the kayak, we clattered on home. I put the wet stuff in the big garage to dry out, then we got supper. Charlie was already 90% asleep, and he seriously overreacted to dropping some books on his foot as he tried to kickstart his bedtime routine.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-62647013464349728122022-02-16T23:45:00.002-05:002022-02-16T23:45:21.492-05:00You know it’s mid-February…<p>…when the daffodils start blooming. This clump is just across the driveway from the front yard.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhXrAUxKe8lHz3Gp2xWUL03h74XnJRJ_ZlSWO8KOICDosHI5dNRIz3nVsrVYk-gasf3k5W6xcuC6Qp8CLK6cTYAWlgZPYre9PbxrVaMdhnNNmN3s9JJt5V4lvx4vOM1IgfhzvYikr2D8VHircwub_CwBgZlV4V2P6Pzx550VNO5AmE2Mg3i=s4032" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4032" data-original-width="3024" height="640" src="https://blogger.googleusercontent.com/img/a/AVvXsEhXrAUxKe8lHz3Gp2xWUL03h74XnJRJ_ZlSWO8KOICDosHI5dNRIz3nVsrVYk-gasf3k5W6xcuC6Qp8CLK6cTYAWlgZPYre9PbxrVaMdhnNNmN3s9JJt5V4lvx4vOM1IgfhzvYikr2D8VHircwub_CwBgZlV4V2P6Pzx550VNO5AmE2Mg3i=w480-h640" width="480" /></a></div><br /><p>A good reminder that winter doesn’t last forever. Better days are coming, and more rain for Sector 706 in the short term. At least we’ve had a week and a half to dry out after the last deluge.</p><p>I got Mason to get up all the stuff he’s strewn around the back yard, and got all of the outdoor toys in the garage or under the gazebo. The boys are off for “winter break” until Tuesday; I never did think to take a day or two off work, but that won’t stop them from coming upstairs (still, it’s not as distracting as co-workers yapping on phones all around me in the office).</p><p><br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjhkN_cZ7m34VBd52ogAicadaOdvZ-OvfsCOvbGqopznEW01pdk_byRZVoMyEZJkYhVXwJhsnRc54l7MuN7OpYdkBB5g2Dc5kq_yTdI3tVXVXh0pCeE3AyaN6u9jC2x8YvhKQ8qK7VJ6_1ZZCyEqOzbVvrZA0Ekdz7Ajf6Idj2vfQJPgv1o=s4032" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEjhkN_cZ7m34VBd52ogAicadaOdvZ-OvfsCOvbGqopznEW01pdk_byRZVoMyEZJkYhVXwJhsnRc54l7MuN7OpYdkBB5g2Dc5kq_yTdI3tVXVXh0pCeE3AyaN6u9jC2x8YvhKQ8qK7VJ6_1ZZCyEqOzbVvrZA0Ekdz7Ajf6Idj2vfQJPgv1o=s320" width="240" /></a></div>It has been warm enough to get the grill out. Sizzle has one of those pellet-feed smokers with the phone app, and it has eliminated the “not quite done” issues in his BBQ game. Me, I just go with the dual-chamber (gas on the left, charcoal on the right) grills. I did a couple of sirloins from the pasture last week, and it was some of the best steak I’ve had in ages. I didn’t sear it, but Sizzle handed me an 11" cast iron griddle he had left out on the deck to rust up. I took a wire cone brush on a drill to it, to get most of the rust, then followed it up with soaking in Coke overnight. That left the ultra-fine rust residue, and I got that off with a Brillo pad. A couple rounds in the oven with a thin coat of Crisco, and it looks a <i>lot</i> better than it did when I brought it home.<p></p><p>So I can toss it on the gas side of the grill to get it good and hot, and put pretty sear marks on the next meat I grill, or maybe cook bacon and/or sausage on it. I’ll probably take it with next time we go camping, too.</p><p>Are you seeing signs of spring? Or getting neglected stuff ready to use again? Comments are open!</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com1tag:blogger.com,1999:blog-12954391.post-16587817384125616732022-02-10T22:00:00.000-05:002022-02-10T22:00:50.840-05:00Sunset over FAR Manor<p> …and when I say <i>over</i>, I mean <b>over</b>.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhJ0rB7I6pDaFypRu5wdIFq0XjfehhEcQpFF7o_A2_Ij_NVKkT2vuYYg0b3zyGCY-daT8iFoMkqA3RPPNYgpsdjiI7zJIKD-jVavcbGW0cZxYe24MfG2dl_fxmIoW-F2C_4Js-DGDnehZwmohhINFhp_xpICwT09Nq9aaL7KWytpVirNfQM=s2560" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1440" data-original-width="2560" height="360" src="https://blogger.googleusercontent.com/img/a/AVvXsEhJ0rB7I6pDaFypRu5wdIFq0XjfehhEcQpFF7o_A2_Ij_NVKkT2vuYYg0b3zyGCY-daT8iFoMkqA3RPPNYgpsdjiI7zJIKD-jVavcbGW0cZxYe24MfG2dl_fxmIoW-F2C_4Js-DGDnehZwmohhINFhp_xpICwT09Nq9aaL7KWytpVirNfQM=w640-h360" width="640" /></a></div><br /><p>I launched the drone, high (23m, according to the flight log) above the trees to get an unobstructed view of the mountains to the west. You can see the <a href="https://farmanor.blogspot.com/2021/11/backyard-entertainment-phase-1-part-1.html" target="_blank">tree platform in the back yard</a> at the bottom center. The light-colored horizontal strip left of center is one of the <strike>chicken houses</strike> equipment storage sheds.</p><p>We’ve been getting pretty sunsets all week, but this was the first evening I had the presence of mind to get an aerial shot. There was a little wind, enough to make it tricky bringing the drone back down, and for the second time I’ve had trouble getting a good GPS lock pre-launch. (The workaround is to turn off the GPS switch on the side of the controller, get the drone up about 20 feet/6m until it finds some satellites, and turn it back on.)</p><p>There has been plenty going on, but I’ve often had a hard time motivating myself to share it. I’ll try to do better.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-10686837755695304002021-12-17T22:45:00.002-05:002021-12-17T22:45:20.731-05:00If the Kludge works, use it<p>Kludge. Jury-rig (or the variant, jerry-rig). Lash-up. Sunshine Engineering (named for Mr. Sunshine, who bodged lots of things together that I had to straighten out later). Whatever you call it, including the racist ones nobody should have used in the first place, it’s (so the dictionary says) “an ill-assorted collection of parts assembled to fulfill a particular purpose.” Sometimes, the kludge is a necessity; a critical piece of equipment failed, deadlines are looming, and there’s no way to run to a nearby store to find what you need.</p><p>So… last week, someone called the wife. Her video business, that hasn't had any significant income in two or three years, still has a listing the in the Yellow Pages. “Can you put VHS video onto DVDs?” As she <i>has</i> done that before, she took the gig. Last time, we hooked a VCR into her commercial-grade DV deck and rolled tape. This time… not so much. The deck wouldn’t stay powered up, and wouldn’t open the tray (she was just passing through, but wanted the tape in there to be out so it wouldn’t interfere). She opined the deck got fried by one of the close lightning strikes we’ve had from time to time, and I couldn’t dismiss the possibility. Meanwhile, I was trying to find our cache of RCA-to-BNC adapters. We found plenty of the BNC-in/RCA-out types, but we needed the opposite. Mal-Wart dot commie carries them, but “not sold in stores.” The Mighty Zon could get us some by Thursday… it was Tuesday, and the wife was in <i>DO SOMETHING NOW</i> mode because she wanted to wrap this up by Friday. But with the DV deck apparently fried, there wasn’t any urgency to get the connectors anyway.</p><p></p><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; padding-left: 0.5em;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhdxeWSl_FGlkzp9n6B4WotCRf8pmQvU895i_1FAUbACVFtWcjCo-QnbxsFk1RHcR0kSZMr8Xqg8O6aB2u1Arn6qO4SUCS3mp4oNykGOPlz9f0gy0GBpPBzd6qGNOmnJAXiWKFHeoekdrPt5UXtTZn2OtSmyZ-VqJq-iHcPOZD-928Huecg=s4032" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="4032" data-original-width="3024" height="320" src="https://blogger.googleusercontent.com/img/a/AVvXsEhdxeWSl_FGlkzp9n6B4WotCRf8pmQvU895i_1FAUbACVFtWcjCo-QnbxsFk1RHcR0kSZMr8Xqg8O6aB2u1Arn6qO4SUCS3mp4oNykGOPlz9f0gy0GBpPBzd6qGNOmnJAXiWKFHeoekdrPt5UXtTZn2OtSmyZ-VqJq-iHcPOZD-928Huecg=s320" width="240" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Seems to work fine for old VHS tapes</td></tr></tbody></table>But! As the wife snarled something about taking her client’s tapes back to her, I remembered finding something else when looking for the adapters: my old Canon ZX-80 camcorder. When I say <i>old</i>, I mean I took footage of The Boy’s high school football games, so at least 15 years. Probably more like 17. The imager crapped out on it a long time ago, but I kept it around because I could at least play tapes into a Firewire connection, view on a tiny screen, or a bigger screen if I plugged in the included DV cable. In other words, it could do everything but take video itself. Being a tech writer, I kept the manual with the camcorder. There were lots of functions I never explored, and just in case…<p></p><p>Well, just in case arrived Tuesday night. I went down the table of contents, and found the vindication of my packrat ways on page 84: <b>Converting Analog Signals to Digital Signals (Analog/Digital Converter)</b>. In this mode, you:</p><p></p><ul style="text-align: left;"><li>connect a VCR to the camcorder’s DV cable</li><li>connect a Firewire cable to the Mac</li><li>start capture on the Mac, play the tape, and relax</li></ul>Sure, it’s a kludge, but time was tight. We have better camcorders, but I didn’t have time to find the manuals to figure out how to use them as video digitizers. Here, we hit Snag #2 (or is it #3? I lost count quickly): Final Cut Pro wasn’t capturing the video, or even seeing it. Looking at the documentation, I guessed FCP was too snooty to deal with an early-century consumer camcorder. So I tried iMovie, and iMovie told me:<p><iframe allowfullscreen="" class="giphy-embed" frameborder="0" height="270" src="https://giphy.com/embed/WrmAysy2Zb2Z2qhVkS" width="480"></iframe></p><p><a href="https://giphy.com/gifs/RosannaPansino-rosanna-pansino-etn3-etn4-WrmAysy2Zb2Z2qhVkS"><small>(link to original)</small></a></p><p></p><p>So I guess iMovie is friendlier to the older, not so well-heeled, camcorders of the world. Since FCP has no problem importing iMovie assets, we were on the way.</p><p>Or so I thought. Snag (<i>int</i>(<i>rand</i>()*4))+3 came in this afternoon. Wife was again ranting about giving up and taking the tapes back to the client, because she couldn’t burn a DVD. I seem to remember us using Compressor to create MPEG-2 video, then using Toast to burn that, but we couldn’t remember the incantations and she wasn’t inclined to take the extra step. So I started troubleshooting. The DVD Burner app icon started bouncing, so I clicked it. “Couldn’t burn (click here for more information).” Clicking the helpful link told me what the initial “insert dual-layer disc” message should have told me in the first place: the video was too long to fit.</p><p>Solution: cut the video to 80 minutes so it fits on a DVD. Splitting video and moving it around is one of FCP’s strong suits, so the wife got to work on it.</p><p>As I type (10:30pm Friday evening), she has all the video on the system, and two or three DVDs burned. She’s behind schedule, but has a clear path to completion.</p><p>If the kludge works, use it… at least until you get a more elegant solution in hand. We’ll look into replacing the DV deck—looks like we might find something that works for around $400—and if she’s going to start back on her video work, it will pay for itself soon enough. Then, maybe, we can look at modernizing the intake end of things (i.e., the commercial-grade camcorders that are at least as old as that ZX-80). As I understand it, a lot of the newest models skip the tape drive and go directly to a SD card with some enormous amount of capacity. If that’s true, importing would mean sticking the SD card into the back of the iMac and copying the file. At that point, who needs a DV deck?</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-22626356223555726282021-12-07T07:00:00.005-05:002021-12-07T21:10:45.051-05:00Computer-Aided Weeding<p>A couple weeks ago, I finally decided to start pulling in all the notes I’d saved up from Evernote and Google Keep into Logseq. I started with Evernote, just because.</p><p>First, I had to update the Evernote app on my iMac, so I could actually access my stuff. That should tell you how long it’s been since I actively used it.</p><p>After exporting, I used a utility called <a href="https://github.com/akosbalasko/yarle" target="_blank">Yarle</a> to convert the notes in each notebook to Markdown.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjYZ7XrKrFHSkEazEqgjnzWuJdxochxS8uoDmtslWgirTWf_msqQv1x4QjlsooF8xvUGHlEzC_rqnOFaZf_iA24riS4vR3loUEkx4J2HZFHGKy9nWWygIwUiRNsaZnLfXt_PNhRTW0tnAXMlmqnd_ryPJG_3LE-fGo8IkoVHp_ikCoD9Bdr=s2308" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="988" data-original-width="2308" height="137" src="https://blogger.googleusercontent.com/img/a/AVvXsEjYZ7XrKrFHSkEazEqgjnzWuJdxochxS8uoDmtslWgirTWf_msqQv1x4QjlsooF8xvUGHlEzC_rqnOFaZf_iA24riS4vR3loUEkx4J2HZFHGKy9nWWygIwUiRNsaZnLfXt_PNhRTW0tnAXMlmqnd_ryPJG_3LE-fGo8IkoVHp_ikCoD9Bdr=s320" width="320" /></a></div><p>Now the hard part: deciding what I wanted to keep, and what to toss. The even harder part: cleaning up the sloppy mess that were most of those individual pages. There were over 400. Cleaning them up in Logseq was do-able, but slow. Lots of repeated stuff. This wasn’t a job for an outliner, it was a job for a high-powered text editor like Vim or <a href="https://atom.io/" target="_blank">Atom</a>.</p><p>Unlike Vim, Atom sports a sidebar that displays all the files in the directory, and its <a href="https://www.regular-expressions.info" target="_blank">regular expression</a> parser recognizes newlines. So I could find blank strings using the expression <span style="background-color: #fcff01; font-family: courier;">^- *\n</span> (which means, “look for a line starting with a dash, followed by zero or more spaces, then a new line”) and get rid of them.</p><p>But the even bigger time-saver: realizing a lot of those entries were long outdated (some dated back to 2013) and deleting them. By the time I was done with that pass, I had 109 “keepers” left. From there, it was a matter of applying search and replace to fix common issues.</p><p>So with 3/4 of the pages deleted, and much of the boilerplate stuff from the remaining pages deleted as well (I just need the content, the source, and some info about the author). That means my assets folder has 4852 items in it, and most of them were no longer being linked to.</p><p>Now… am I going to make 4852 passes through my pages, <i>by hand</i>, to see if a pic can be deleted?</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjKVXgPAqBgnwJyy8Hzx_Rqi1Y5YR4cSjrqx4gDTASTCshGjgj4R5ojaB7P1vKh8HVQD4xegwdXZ4d3P-e1nGfTWA6d_YNzwhwiqTGaHtWYlpLLNcMO83hz-tKWdTfXG1QW_6AR4LuAcO9C-NqqLVTJScUb7HRssHbuzOA336_5kGAdNqmL=s498" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="398" data-original-width="498" height="256" src="https://blogger.googleusercontent.com/img/a/AVvXsEjKVXgPAqBgnwJyy8Hzx_Rqi1Y5YR4cSjrqx4gDTASTCshGjgj4R5ojaB7P1vKh8HVQD4xegwdXZ4d3P-e1nGfTWA6d_YNzwhwiqTGaHtWYlpLLNcMO83hz-tKWdTfXG1QW_6AR4LuAcO9C-NqqLVTJScUb7HRssHbuzOA336_5kGAdNqmL=s320" width="320" /></a></div><p>The shell (aka Terminal) is my machine gun for blasting a job like this.</p><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;"><p><span style="font-family: courier;"># assume we're in the assets directory</span></p><p><span style="font-family: courier;">mkdir -p ../assets_removed</span></p><p><span style="font-family: courier;">for i in *; do</span></p><p><span style="font-family: courier;"> grep -q "$i" ../pages/* || mv "$i" ../assets_removed</span></p><p><span style="font-family: courier;">done</span></p></blockquote><p>Let’s pick this apart, for those who need it.</p><p>The first line is just a comment. An important one, all the same. You need to be in your Logseq database’s <span style="font-family: courier;">assets</span> directory for this to work correctly. <b><span style="color: red;">BAD THINGS will happen otherwise!</span></b> One of the nice things about using MacOS: if I eff something up, I can pull it out of the Time Machine backup and try again.</p><p>Next, we make a directory called <span style="font-family: courier;">assets_removed</span> at the same level as the <span style="font-family: courier;">assets</span> directory. Just in case we make a mistake, you know. The <span style="font-family: courier;">-p</span> option is there to make the script shrug and move on if the directory already exists (if we’ve been here before, for example).</p><p>The third and fifth lines begin and end a loop, going through each of those >4800 graphic files.</p><p>Inside the loop, we search for the file name in the pages. The <span style="font-family: courier;">-q</span> option is exactly what you want for a script like this; it returns success if <span style="font-family: courier;">grep</span> finds the string and failure otherwise. The <span style="font-family: courier;">||</span> (two vertical bars) means “execute the next part if it fails” (in this case, fails to find the file name)… and the next part moves the unused file to the <span style="font-family: courier;">assets_removed</span> directory.</p><p>And I ended up with 255 files (out of nearly 5000) that were actually being used. The other ones are out of the way, and can be safely deleted once I verify that none of them are needed.</p><p>[<b>UPDATE</b>: After stepping through the pages again, I found 18 “false negatives” that had to be dragged back into the <span style="font-family: courier;">assets</span> folder. That’s why you move them out of the way, instead of just nuking them.]</p><p>It took about a minute to grind through the <span style="font-family: courier;">assets</span> directory, and a couple of minutes to set up the script, but that beats the heck out of hours (or days) doing it by hand! I’m fond of saying, I’m lazy enough to get the computer to do my work for me. It doesn’t always pay off this big, but it does pay off.</p><p>Off to get the Google Keep notes…</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-70344814166080099342021-11-18T23:08:00.000-05:002021-11-18T23:08:20.416-05:00Some updates to recent happenings<p><a href="https://farmanor.blogspot.com/2021/11/backyard-entertainment-phase-1-part-1.html" target="_blank">Backyard play area</a>: I got another pair of eyebolts and hung the <a href="https://farmanor.blogspot.com/2018/11/it-dont-mean-thing.html" target="_blank">old bucket swing</a> beside the nest swing. Charlie has long outgrown its previous iteration, but it’s perfect for AJ. She was a little apprehensive at first, as it’s fairly high off the ground; but once she realized there was a gate of sorts, she was all for it.</p><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://1.bp.blogspot.com/-CKaOj-zP62E/YZcU_p1q4zI/AAAAAAAAHHk/uaqFidZQo9ctZn4zKf4oMD9cLIAAwJoRQCNcBGAsYHQ/s2048/AJ_DD_swing.JPG" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="2048" data-original-width="1536" height="400" src="https://1.bp.blogspot.com/-CKaOj-zP62E/YZcU_p1q4zI/AAAAAAAAHHk/uaqFidZQo9ctZn4zKf4oMD9cLIAAwJoRQCNcBGAsYHQ/w300-h400/AJ_DD_swing.JPG" width="300" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Up high is where the fun is!</td></tr></tbody></table><br /><p><a href="https://farmanor.blogspot.com/2021/11/the-balloon-goes-up.html" target="_blank">Balloon</a>: The planning commission met Tuesday to hear about the proposed tower. A lawyer for Verizon came, along with a rep from the company they’re outsourcing the tower ownership to. (I’m not sure quite what the deal is with that, if it’s a way to shield Verizon from any liability issues with the tower, or what.) Anyway, the neighbor to whom I sent the photo invited me to ride with them to the hearing.</p><p>So they had a nice little presentation, justifying why the tower was needed. They wanted both a Special Use permit (to put the tower on a piece of agricultural property), and a variance. Towers have to be spaced 3 miles (4.8km) apart here, and the location is 220 feet (67m) short of 3 miles. The tower is spec’ed at 190 feet (58m) high, plus 5 feet (1.6m) for a lightning rod, just short of the height that requires flashing lights.</p><p>After they finished, they invited members of the public up to speak for or against the tower. There were only a handful of citizens, and we were all nearby residents. Personally, it's “not my dog, not my fight.” The trees along the road would hide it for me, even if it did have a <a href="https://en.wikipedia.org/wiki/Blinkenlights" target="_blank">blinkenlight</a> up top. But being a good neighbor, sometimes, means supporting your neighbors when they feel strongly about an issue (to a point… if they think #Dolt45 is the second coming of Christ, I’m not supporting <i>that</i>).</p><p>Anyway, the commish for our district is also the chairman, and said he thus wouldn’t be voting (although he seemed to lean toward supporting it). The others were less convinced, and thus both the Special Use and variance were voted down 3-0 (with the chairman abstaining). <i>Shocker!</i></p><p>As we stood around outside, chatting about the next move, our commish came by and said, “You’ll need to be here December 16 for the county board meeting.” The board can, as I gather, overturn the planning commission's decisions… which means it’s more of a recommendation than a decision. I guess that means we (the neighborhood) need to come up with our own counter-presentation. I don’t have any qualms about public speaking; I’ve done a dozen or more sermons at church, so I’ll take point on this one.</p><p>One salient point, that one of the neighbors brought up: after they get the 190-foot tower up, what will stop them from coming back later and insisting they need a bigger tower at that spot? Then we get Das Blinkenlights, and maybe it <i>is</i> my dog in the fight. They should have chosen our pasture to put that stupid thing up in… it wouldn’t have even bothered the cows.</p><p>The thing is, Verizon could short-circuit all the opposition with a little honey. The local phone company laid a bunch of fiber along the road, going straight to the proposed tower site, and it’s mostly dark. If they offered to light up that fiber and give everyone a far better Internet connection (for free) than our flaky DSL, they might end up with one or two holdouts. Stay tuned, there will be more next month. I'm sure Goliath isn’t done with us yet.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-74486993874555879502021-11-10T08:00:00.003-05:002021-11-10T08:00:00.238-05:00Backyard entertainment, Phase 1 (part 3, finishing touches)<p> I’m fond of saying, “In for a dime, in for a dollar.” Or as one of the villains in <i>White Pickups</i> put it, “Go big, or go home?” In other words, I’ve already sunk a fair amount of time and money into this project. No sense in leaving it 90% done. Besides, I needed at least <i>one</i> thing for Charlie. Mason got his treehouse and extreme swing, after all.</p><p>So I ordered the bits that I figured would finish it up: a nest swing and a climbing net. The swing was, after all the other stuff I did for the platform, nearly trivial: put it together, screw a couple of eyebolts into the bottom of one support, and hang the swing. I got another 8 feet (2.4m) of decking, and had just enough to piece together the last of the open joist area. And I had <i>exactly</i> enough screws to finish (after finding two in the bottom of my tool bag).</p><p>Anyway, Charlie likes the swing.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/-3h-A0wj6CGE/YYnh89XorjI/AAAAAAAAHHM/Y4cg2S-PHAYW-GZOYnxGt516hiNK_FwzACNcBGAsYHQ/s2048/Charlie_nest_swing.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1536" height="640" src="https://1.bp.blogspot.com/-3h-A0wj6CGE/YYnh89XorjI/AAAAAAAAHHM/Y4cg2S-PHAYW-GZOYnxGt516hiNK_FwzACNcBGAsYHQ/w480-h640/Charlie_nest_swing.jpeg" width="480" /></a></div><br /><p>One more thing to go: the ladder. I wanted something more permanent, so I started reading the instructions for the climbing net. <i>Uh-oh… it wants a 4x4</i>. Upon further reading, and using some of my tech writer skills to interpret what was really going on here, I realized the intent was to sling the 4x4 under decking that stuck out past the support beam, and the 6" eyebolts at the top of the net went all the way through both. The end of the decking only sticks out about 1/2". Scrounging around, I found a 4x6 that was long enough for the job. Some Timber-Lok screws secured it to the beam (and stuck out far enough that we felt it necessary to hacksaw the pointy ends). But I didn’t have a drill that would go through the wide side of a 4x6. Back to the Despot to get a 12" bit (I would have settled for 8" but they didn’t have any).</p><p>Mason: “That’s <i>long</i>!… and it went all the way through!” Well yeah, that was the whole point. It worked best to go in about an inch, pull out to shuck the shavings, and repeat until it went through.</p><p>Now the instructions said to run the eyebolts up from underneath, secure them at the top, then use provided plastic covers. Mason suggested doing it backwards—and since the eyebolts barely clear the top of the decking, it worked pretty well to reverse it.</p><p>How to secure it at the bottom? A few augur stakes would be just the thing, but I don’t have any laying around. But I <i>did</i> have a plastic maul handle laying around. It released the business end a long time ago, and has been sitting in a corner ever since. I hacksaw’ed it in half, used a 1/2" spade bit to put a hole in one end of each half, then pounded them into the ground. The bottom of the climbing net had convenient loose ends to tie to a stake, and I threaded them through the holes and tied it all down.</p><p>It works pretty well. It even holds me up, although the ladder is a bit more convenient for me. Oh well.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://1.bp.blogspot.com/--qyKzSMsshM/YYnlga8ifEI/AAAAAAAAHHU/qvCkpEaeoHwcjp8w1N5z3nx3N6XTEcJGwCNcBGAsYHQ/s2048/Kids_on_platform.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1536" height="640" src="https://1.bp.blogspot.com/--qyKzSMsshM/YYnlga8ifEI/AAAAAAAAHHU/qvCkpEaeoHwcjp8w1N5z3nx3N6XTEcJGwCNcBGAsYHQ/w480-h640/Kids_on_platform.jpeg" width="480" /></a></div><br /><p>(The girls are the daughters of a guy who helps the wife with farm stuff. The older one, on the net, is Mason’s age and also in advanced classes. And yes, the two of them do some scuffle-flirting as 12 year olds do.)</p><p>So that’s Phase 1 complete! Mason has grandiose ideas for upgrades, including walls (although he thinks railings would be bad), a roof, and maybe even a second floor? He’s likely to get a canopy for a roof, and a zipline going off the other side, for Phase 2. I might put up a couple more eyebolts, to hang the bucket swing for AJ. She likes the nest swing, but wants someone riding with her.</p><p>Mason also likes the nest swing, by the way. He found that the Wi-Fi reaches to it, and has laid in it with his iPad to play Minecraft. But being November, it’s taking a turn for the colder. The kids are putting the shorts away for the duration.</p>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0tag:blogger.com,1999:blog-12954391.post-87857470555510907222021-11-10T07:30:00.005-05:002021-11-10T07:30:00.221-05:00Backyard entertainment, Phase 1 (part 2, deck and rope swing)<p>With the framework complete, I tossed four planks onto the joists. Given the length of the boards, I decided to start in the center and work my way out. This worked very much like the support beams: put a deck screw on one end (using a hip square to space them), scoot across to the other end, space and screw down, then work back and put down more screws along the way.</p>
<table>
<tbody><tr><td style="width: 33%;"><a href="https://1.bp.blogspot.com/-c8Q5w8gztCQ/YYnXm2SEZ9I/AAAAAAAAHG0/uV0z3w-zduUD8M3DsrmUkrkmxWxImYChQCNcBGAsYHQ/s2048/Platform_deck_start.jpeg" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="2048" data-original-width="1536" height="200" src="https://1.bp.blogspot.com/-c8Q5w8gztCQ/YYnXm2SEZ9I/AAAAAAAAHG0/uV0z3w-zduUD8M3DsrmUkrkmxWxImYChQCNcBGAsYHQ/w150-h200/Platform_deck_start.jpeg" width="150" /></a><br /><br /></td><td style="width: 33%;"><a href="https://1.bp.blogspot.com/-ynWgptEcmu8/YYnYJtTSGnI/AAAAAAAAHG8/FPI1K7MFRdUg3augYMLoE5NSdwQtNBqTwCNcBGAsYHQ/s2048/Platform_deck_midway.jpeg" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="2048" data-original-width="1536" height="200" src="https://1.bp.blogspot.com/-ynWgptEcmu8/YYnYJtTSGnI/AAAAAAAAHG8/FPI1K7MFRdUg3augYMLoE5NSdwQtNBqTwCNcBGAsYHQ/w150-h200/Platform_deck_midway.jpeg" width="150" /></a><br /><br /></td><td style="width: 33%;"><a href="https://1.bp.blogspot.com/-D2ZceCOYuVM/YYnYdlIGWiI/AAAAAAAAHHE/J_33WuJzRK8JQcBrv8wBh15DWbGtaV55ACNcBGAsYHQ/s2048/Platform_deck_finish.jpeg" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="2048" data-original-width="1536" height="200" src="https://1.bp.blogspot.com/-D2ZceCOYuVM/YYnYdlIGWiI/AAAAAAAAHHE/J_33WuJzRK8JQcBrv8wBh15DWbGtaV55ACNcBGAsYHQ/w150-h200/Platform_deck_finish.jpeg" width="150" /></a><br /><br /></td></tr>
</tbody></table>Well, it wasn’t quite done. I calculated 11 boards should be just enough to cover it, and I could have sworn I’d ordered 11, but they gave me 10. Checking the order later confirmed that I’d asked for 10. I’m not sure how that happened, but it was just one corner that was see-through. Mason was ready to move in! Even with my chunky bod on the thing, there’s no sag or sway, so I was happy with my over-engineering.<div><br /></div><div><br /></div><div>With the deck complete enough, it was time to accessorize. Mason had already picked out a nearby branch for a rope swing (you can see the spool on the ground in the third pic), and he chose well. I tied a lug nut to the end of a fishing line, and cast. It went over on the first try!… and kept going… and going… and ended up over a second tree. We ended up breaking the line, trying to get it free, and subsequent casts gave us none of the luck of the first one. I tried casting from the other side, and ended up sailing it all the way across the back yard and into yet another tree.</div><div><br /></div><div>Mason, who is a perfectionist with a short fuse, was getting increasingly frustrated at this point. I said, “Using a bow and arrow is another way to do this. Too bad we don’t have one.” Mason immediately brightened, ran into the house… and came out with a bow and arrow. We had bought it for him for Christmas a few years ago, and I don’t remember him using it much. But we tied the line to the arrow, and (after a few attempts), he got it over the limb. Not exactly where we wanted it, but it turned out to be a better spot anyway.</div><div><br /></div><div>Next snag! We tied the rope to the fishing line, and found it wasn’t quite strong enough to get the rope up and over the limb. Mason was re-entering his funk, when I suggested we use the smaller rope I keep around for camping trips or shaking drones out of trees. It wasn’t quite long enough to go all the way up and over, but it was long enough that the fishing line held until we could grab the small rope and pull the big rope down. I tied a slipknot (showing Mason how it’s done), and hauled on the rope until the knot was at the limb. I hung on it to test it—if it held me, it will certainly hold Mason—and all was well.</div><div><br /></div><div>It was not long at all before Mason was launching off the platform on it…</div><div><br /></div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.blogger.com/video.g?token=AD6v5dz9eoN2S-AmcZH9hL9fD5wQ8LUAylYqMraQ3hwme6p_ekXdEkgdeK3NDiiKx8eiJ7ZHFfiG5i18Hrw' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br /><div>At this point, Mason was good to go. But Charlie needed something, because he can’t be allowed up top, and I wasn’t going to have the stepladder as a permanent access method. <a href="https://farmanor.blogspot.com/2021/11/backyard-entertainment-phase-1-part-3.html">The next part</a> will wrap up Phase 1.</div>Larry Kollarhttp://www.blogger.com/profile/08317037795075278427noreply@blogger.com0