Title photo
frugal technology, simple living and guerrilla large-appliance repair
Thu, 15 Feb 2018

Showtime's 'I'm Dying Up Here': Comic timing ... and parking

So I've been watching Showtime's "I'm Dying Up Here," the excellent series about LA's 1970s stand-up comedy scene and its "Carson's couch means you've made it" vibe, and all I can think about is how easy it was to park your car in LA back in those days.

Mon, 15 Jan 2018

Use the Twitter API instead of a third-party service

I have been experimenting with the Twitter API and using dlvr.it and IFTTT less (ironically because this post will Tweet via IFTTT). My purposefully social posts use a script and the API.

My whole posting setup is big-social-network-optional

My systems and scripts are all focused on publishing content to my sites. Mirroring them on social media, currently Twitter, is optional and can be modified or pulled altogether at any time.

Wed, 27 Dec 2017

Steady work on rewrite of the BlogPoster app

I have been working steadily on the BlogPoster app, both tightening up the current "production" version and slowly coding the new "modular" version based on Ruby blocks.

Over the weekend I coded up a few blocks in what I hope will be a very atomized app in which all of the blocks do just about one thing and can be called upon in various combinations for different tasks.

Today I worked on the regexes for creating filenames based on post title. The hardest part is dealing with strange characters and website <title> text that contains lots of linefeeds. (Confession: This site did the same until I fixed it. Please don't put linefeeds in your <title>.)

I got rid of the extra linefeeds, but I was ending up with occasional doubled underscores (my go-to replacement character for the space between words). I came up (i.e. Googled and stole) the regex for "match two or more of this character," which in this case is __+, and I was off to the races. I also figured out that in HTML titles with extra lines, I was inadvertently adding an underscore to the beginning of a string, and I used ^_ to find that and kill it out. Regex is fun and profitable.

Hopefully I'll get back to working on the "new" version. I'm coding it slowly and deliberately because I don't want it to be a mess. Next version will be more object-oriented (i.e. will use classes) if I can figure that out. First we'll see how this version turns out,

Tue, 21 Nov 2017

My Blog Poster app works well in Ubuntu (ok, really Lubuntu) Linux

I recently updated a 15-year-old IBM Thinkpad R32 laptop (Pentium 4, 1 GB RAM, 20 GB hard drive) to Lubuntu 16.04, and I set it up to run my Blog Poster script written in Ruby.

Since this is a Linux environment, I like to use the Ruby version that the system offers in its repositories, also installing as many Ruby gems as I can from those same repos (instead of using gem install from the console).

The Blog Poster app, which attempts to make it easy to create social and regular blog posts from the command line, uploading them to the blog and sending them directly to Twitter, is fairly simple. It uses two gems: Nokogiri to help pull the titles of web pages and Twitter to (you guessed it) send a post to Twitter.

On Windows I used gem install to get both of those gems, and I could do the same in Lubuntu. But I'm very comfortable with Linux package management, so I opted to install ruby (which, believe it or not, isn't in the Ubuntu/Lubuntu default install) as well as ruby-nokogiri and ruby-twitter, all from the Ubuntu repository.

It worked.

Curiously, the script's call to vim did not work. There is, theoretically, no vim in the Ubuntu/Lubuntu default. But there is vi. You can install vim, but I opted to stick with the vi default, and I modified the system call in my Ruby code to call vi instead of vim.

Also, copy-pasting into the terminal (LXTerminal is what I am using) via right-click works great (though ctrl-v does not work).

The Ruby script works great, and I did a few successful updates to my blog and Twitter feed with this very aged laptop.

Sat, 18 Nov 2017

Procedural vs. object-oriented: How should you code?

I'm a procedural programmer at this point. I understand the idea behind object-orientation, but going from those hokey examples (start with an animal class, then add a dog class) to actual code is another thing entirely.

I planned to base this post on a link that was supposed to be about procedural programming vs. OOP, and the article was pretty much a mess and didn't help me, so I'm not linking to it.

I need to see real code that uses OOP. That's the only way I'll figure it out.

I have too many tabs open to use Firefox

Even though the new Firefox promises to be twice as fast as the old one and a legitimate competitor once again to Google Chrome, I have to stick with Google's browser. I'm working today, and I have 25 or so tabs open. I can see all 25 at once in Chrome, but Firefox only shows so many -- you have to hit arrows on either side to see them all. That doesn't work for me.

Fix Windows Hello (facial recognition) on HP laptop (or probably any laptop) after Windows 10 Fall Creators Update

After I installed the Windows 10 Fall Creators Update on my HP Envy laptop, the Windows Hello facial recognition login feature stopped working.

I Googled and found a simple solution that works.


  • Open Device Manager
  • Expand Imaging Devices
  • Right-click on IR camera (or any camera, probably) and choose to update the driver

The driver updated, then I went to Set Up Face Sign-In and re-configured Windows Hello.

And now it works.

Fri, 17 Nov 2017

Windows 10 is really not that bad

If you have an old computer, you should definitely consider Linux (and not just Chrome OS, as this ZDNet article suggests), but when it comes to new hardware you're buying right now, Windows 10 is more of a contender than the Microsoft operating system has ever been, even for people -- like me -- who have been using Linux as their OS of choice for years.

First of all, Windows 10 works well, is pretty slick, and handles HD (and presumably UHD) displays very well.

And since much of our (or at least my) computing is application-based and not so much OS-based, it doesn't really matter if you run the Google Chrome browser in Windows, Linux or Mac OS. It's still basically the same browser.

I still have the Geany text editor (though there is no terminal window in the Windows version). I code in Java and Ruby and haven't run into any problems yet.

But I wouldn't be here, still running Windows 10 on my 8-month-old laptop, if if werent for the Windows Subsystem for Linux, aka Bash on Windows, aka Ubuntu on Windows.

My "critical" Linux stuff -- mainly the scripts that run this blog -- still live in a Unix environment (believe me, I've tried it in Windows, and it's not happening). I use the WSL every day.

I also use Vim every day -- both in the WSL and in Windows, which has its own version of Vim (and GVim).

So far I've had one regression with the Windows 10 Fall Creators Update -- the facial recognition on this HP laptop stopped working. Maybe it'll get fixed. It's not at all critical.

I just didn't want to go through the fight to get Linux just right on this laptop when my interests these days are more in writing code in Ruby and Java and less in how my OS is handling graphics, sound, networking and the like.

If these things were a problem in Windows 10, I'd be running back toward Fedora. Or Ubuntu. That might happen. And I still have my Fedora-running laptop. But once you go to an HD screen, it's hard to go back. I'll probably say the same thing about UHD when I get a laptop that offers it.

But for now, the OS is not important. I am running a browser and a few programming languages, various and assorted text editors, and until Windows 10 crosses me, I'm not motivated to buy myself any trouble (and don't tell me how you installed your favorite Linux system and had absolutely no problems ever; fixing those problems veered into hobby territory for me, but I'm just not feeling it these days). I recognize that Microsoft is spying on me. So is Google. I'm probably more comfortable with the former than the latter. And I'm way more comfortable with either one of those than I am of Facebook. That's a topic for another day.

Tue, 14 Nov 2017

John Stowell live in The Sound Room at WEEU-AM 830 in Reading, PA

One of the best, deepest and most innovative solo jazz guitarists working today, John Stowell, plays "Ligia," "Nobody Else But Me," and "Remembering the Rain" during a live session at WEEU-AM 830's The Sound Room in Reading, Pennsylvania.

His harmony is so innovative, and his chords so unconventional, that he's pretty much re-inventing how jazz is played on the guitar. I think Ed Bickert played chords kind of like this, but Stowell is definitely in his own arena when it comes to playing tunes his way.