Many of my traditional blog post live on this site, but a great majority of my social-style posts can be found on my much-busier microbloging site at updates.passthejoe.net. It's busier because my BlogPoster "microblogging" script generates short, Twitter-style posts from the Linux or Windows (or anywhere you can run Ruby with too many Gems) command line, uploads them to the web server and send them out on my Twitter and Mastodon feeds.
I used to post to this blog via scripts and Unix/Linux utilities (curl and Unison) that helped me mirror the files locally and on the server. Since this site recently moved hosts, none of that is set up. I'm just using SFTP and SSH to write posts and manage the site.
Disqus comments are not live just yet because I'm not sure about what I'm going to do for the domain on this site. I'll probably restore the old domain at first just to have some continuity, but for now I like using the "free" domain from this site's new host, NearlyFreeSpeech.net.
I created an applet on IFTTT that takes a subdirectory of my blog feed (using RSS out of the blog) and generates a social post on Twitter.
By "social post," I mean something different from the usual automatic post to Twitter, Facebook, Google Plus or any other social-networking service.
The usual post features a title and a link back to the original item.
But a "social post" is just text. It's the "body" of the entry and neither includes nor needs a title or a link back to the original blog post. It can include links if they are part of the post body.
When I started doing this -- dedicating a subdirectory of my blog to social posts, I experimented with both IFTTT and dlvr.it, going with the latter (if I remember correctly) because while I was able to create my social post out of a dedicated subdirectory in both services, only in dlvr.it was I able to simultaneously post the rest of my non-social blog entries to Twitter without worrying about double-posting the social entries. In other words, I set up the "main" dlvr.it action to exclude my "social" directory (I use /updates).
Note: In WordPress, you can set this up using a dedicated category or tag, each of which can be fed to any of these services with RSS.
Now I look in dlvr.it, and I can't see what I did to "exclude" the social feed from my "main" feed. Maybe that code got purged and dlvr.it knows not to double post.
I'm still looking in on it.
Anyhow, my reason for moving away from dlvr.it is the service's new limit of 10 posts per social account per day. Especially when doing quick social-style updates, it's easy to go over 10 posts per day. And while I can't criticize dlvr.it for trying to monetize their service with a monthly fee that removes the 10 post limit and adds many other useful things, it's just too much money for a non-revenue-generating web site like mine.
IFTTT (aka If This Then That) can probably do what I'm "asking" it. I just have to figure it out.
I don't log into my dlvr.it account very often, though I use it continuously to send the output of three blogs to (mostly) Twitter and (a little bit of) Facebook.
I needed to tweak one of my "routes" on dlvr.it, and I logged in this morning. I found out that as of June 1, 2017, dlvr.it is imposing a 10-post per day limit per social profile.
Dlvr.it users can avoid the limit and unlock the rest of the social-posting service's goodies by subscribing at the rate of .99 a month.
I like getting dlvr.it for free, though I understand that the service needs to make money. And for "commercial" users, .95 a month is nothing. Even the "Agency" rate of .99 a month is nothing if you're managing dozens of feeds and social accounts.
But for the casual amateur user like myself? Just like with the Washington Post, which coincidentally also charges .95 a month, I see tremendous value in the service but would be much more comfortable paying a month. What I'm saying is that my price point is , not , so these two services are currently not getting from me. They are getting /home/public//cgi-bin/ode.cgi.
We live in a world awash with /month pricing models, and if you're using 10 of these services, it really adds up. Maybe I'm super-stingy, but my price point is what it is, and I have the feeling I'm not alone. But also, I'm not running a business. But I get the feeling that a lot of these services could make it up in bulk by lowering the resistance to subscribing along with their price What I'm saying is that my price point is , not , so these two services are currently not getting from me. They are getting /home/public//cgi-bin/ode.cgi.
We live in a world awash with /month pricing models, and if you're using 10 of these services, it really adds up. Maybe I'm super-stingy, but my price point is what it is, and I have the feeling I'm not alone. But also, I'm not running a business. But I get the feeling that a lot of these services could make it up in bulk by lowering the resistance to subscribing along with their price.
I just heard about "The JavaScript Way," a book by http://www.bpesquet.com/ that is https://github.com/bpesquet/thejsway/ and a minimum of https://leanpub.com/thejsway.
It bills itself as beginner-friendly yet written to ES2015 standards. I took a quick look, and so far I like it.
I knew that OpenShot was never the absolute "best" video editing application out there, but it was free, it mostly wworked and, more importantly, I knew how to use it.
I ran OpenShot in Fedora Linux for a few years and made dozens of servicable videos on it.
Going from Version 1 to Version 2 was supposed to open (pun not intended) a new era for OpenShot, but instead it made the program unusable. Once OpenShot crossed into 2.x territory, I had plenty of problems with dependencies in Linux, and now that I'm on Windows 10 and there is a version for that platform, it does install but can't seem to do anything complex or even export a simple video without crashing.
So I'm casting (pun not intended) for new video-editing solutions. On the table are KDEnlive for Linux and anything proprietary on Windows that my company will buy me.
Not on the table unless I get super desperate is Blender. It just looks too damn complicated to do just about anything with that application.
So what do you think I should go for? At this point, I'm looking at remaining on Windows, but I do have a Linux laptop that I can dedicate to video editing if it comes to that.
Update: I was able to output a video on my new laptop with OpenShot 2.3.1. I have 2.3.4 on my Windows 7 desktop. I hope updating on the laptop won't break the program.
Further update: The .mp4 produced by OpenShot wouldn't upload successfully to YouTube.
This post from the Meteor Forums is drawing some attention. (Thanks to HashBang Weekly for the link.)
'Learn Ruby on Rails' by Daniel Kehoe has been updated for Rails 5.1.
I'm on Mozilla's mailing list, and they sent me an e-mail about the Firefox Focus browser being available for Android and how it enhances privacy and speeds up browsing by blocking ads.
I'm not one to add browsers to my phone. All of my previous Android phones were storage-challenged, and I could barely keep them running with a bare minimum of apps, so adding browsers just wasn't something I would even consider. And I did add Firefox once, and it took up a LOT of space.
But part of the come-on for Firefox Focus was that it was small and would take up no more than 4 MB of space on the phone.
I have the space for bigger apps on my 16 GB phone. And I know that 32 GB is considered small these days, but I try to pay or less for a phone, and that means 16 GB of internal storage. Maybe a 32 GB phone will cross into my price range during this year's Black Friday. (We try to get a Black Friday phone deal in the sub- every year for the whole family, and I aim to double the phone's internal storage, or I won't do it. We went from 512 MB to 4 GB to 8 to 16 over the past four or five years. The fact that my phones are always storage-challenged has made me reluctant to install apps in general and redundant apps in particular, though with the 16 GB I am loosening up.)
The short version of all this is that I installed Firefox Focus, which has been available for iOS longer and is a recent addition to Android.
It is fast. It is also minimal. No tabs, no bookmarks. It puts up a notification as soon as you use it to forget its history. This all factors into the privacy and the speed. If it keeps me from being tracked in some way, so much the better.
I'm not ready to make it my default browser in Android, but I will continue to use it and follow its development.
Ethical dilemma: My livelihood is supported by websites that sell advertising, and I am somewhat unsettled by major applications that block ads by default. On the other hand, I'm disturbed by the amount of information that is collected, the extent of tracking and the unknowing intrusions into privacy that are all rampant in the service of targeting ads. I'm very, very close to supporting my favored news sources with subscriptions and taking advertising (or at least any guilt over blocking it) out of that portion of my personal media consumption. Plus I'm not blocking ads on any other platforms (principally Google Chrome on Android, Windows and Linux).
But: Am I feeling sorry -- in any way, shape or form -- for Google and Facebook and any revenue they may lose? No. They are doing more than fine as they leverage the hard work of others in order to make billions they don't share, giving "users," be they individuals or companies nothing beyond their "free" service.
Sign of the times: The fact that major applications tout ad-blocking as a key feature says a lot about where the Internet is today, i.e. not in a good place. I fear that the display-ad economy is a false one that will leave many disappointed, crushing labor-intensive news organizations under its fickle, giant-favoring boot.

I don't keep up with Debian, though my sentimental feelings for the pioneering Linux distribution remain strong. My days with Debian were late Etch into Lenny, Squeeze and early Wheezy. For the release of Squeeze, I used SVG files from the desktop's awesome artwork and made a custom T-shirt that I still wear.
Not to bury the lede too far, the news of the day is that Debian 9.0 Stretch has been released as Stable. For more on Stretch, read the installation manual and release notes.
I still have an old IBM Thinkpad R32 that runs Debian -- I can't remember if it is still on Wheezy, though it probably is.
For my laptops, I started running Fedora when I got a new laptop in 2010 -- a Lenovo G555 with an AMD processor. Since I was using the proprietary Catalyst video driver, I eventually broke the installation and moved to Debian, which I ran on the laptop until it died in 2013. I began again with Fedora on my next laptop, an HP Pavilion g6, and it is still running that version of Linux (and I'm using it right now to write this post). I now have a new HP laptop, an Envy, that is still running the Windows 10 it came with, and I added the Windows Subsystem for Linux/Bash so I can have a fairly functional Linux command line.
So I'm not a current Debian user. Especially on the desktop, I want newer versions of just about everything, and I find it easier to get that in the twice-yearly releases of Fedora instead of Debian Testing or Unstable. Debian Stable, which I've used and loved, is just too "stable."
But if you think about it, I could easily run Debian Stable and add newer versions of Node, Java, Ruby and NetBeans. When a laptop is new, I find Fedora to be the easiest, quickest and best way to get the most hardware working, but after a couple of years, Debian is a very attractive option.
With newer hardware, there's always the Liquorix kernels, which I used to run so I'd always have the latest on my Debian installations.
For my programming needs, Node is certainly part of Debian Stretch, but this part of the release notes is a little worrying:
5.2.2. Lack of security support for the ecosystem around libv8 and Node.js
The Node.js platform is built on top of libv8-3.14, which experiences a high volume of security issues, but there are currently no volunteers within the project or the security team sufficiently interested and willing to spend the large amount of time required to stem those incoming issues.
Unfortunately, this means that libv8-3.14, nodejs, and the associated node-* package ecosystem should not currently be used with untrusted content, such as unsanitized data from the Internet.
In addition, these packages will not receive any security updates during the lifetime of the stretch release.
I checked the v8 package in Fedora, and it appears to be updated about every month, though not at all for the past three months. I'm not sure what to take away from this. I'd have to look at the upstream v8 before making any judgments on how well Fedora is doing with the package, plus I'd need to see how Ubuntu handles it.
Back to Debian. The Debian Project is the code that goes into it and the volunteers that make it happen. Debian is not owned by any corporation, individual or group. It'll pretty much always be there and be free.
Does Debian benefit from work done by corporations like Red Hat? Yes, it does. Free software in general and Linux in particular are coded by individuals all over the world, some of whom are paid by companies to make their contributions.
However it finally goes together, Debian is a special project.
The short version: If you can make Debian Stable work for you, it's a terrific operating system that really is stable and will last you a couple of years without a major upgrade. If you're interested, it's worth a test on your hardware before committing to a Linux distribution. On my computers, the "contenders" are Debian, Ubuntu (mainly the Xubuntu version with Xfce) and Fedora.
I read Chapter 3 of Eloquent Javascript some time ago, and it's a difficult one. It introduces the concept of functions. Quickly introduced are: Parameters and Scopes, Nested Scopes, Closure and Recursion.
It is too much, too fast with too few examples. I was able to do the first exercise, Minimum, but got lost in the second, Recursion.
Here is my solution for Minimum:
#!/usr/bin/env node
/* Eloquent Javascript, Chapter 3, Page 56, Exercises
Create a function to find the minimum of two arguments
By Steven Rosenberg, 6/17/2017 */
function smallest(first_number, second_number) {
if (first_number < second_number)
return first_number;
else if (second_number < first_number)
return second_number;
else
console.log("They are equal")
}
// Output will be the smallest of these two numbers
console.log(smallest(100, 2));
Expressing this as a function doesn't really do much. The program could just as easily have been written in a straight "procedural" format. But it's a function, and it works.
The second problem on recursion stumped me. I'm pretty sure I can figure it out, but I need more time to think (and look up more on recursion).