I am using MarsEdit more and more for microblogging. I like it being “write-only”, as compared to using the official Micro.blog app, because it keeps me focused on getting the post done. Like lots of bloggers, I have a lot of unfinished blog post drafts lying around.

Maybe writing a todo.txt app with a task list and a text editor mode is not the best idea.

So…my new SwiftoDo Desktop app for the Mac would be 100% complete right now, if I hadn’t decided, 75% of the way through writing it, to add a secondary edit mode for the todo.txt file. That mode makes the user interface comparable to the iOS version of SwiftoDo, but is also loads better in subtle ways, such as being able to reload the file (in either mode) if an external editor (such as iCloud Drive) modifies the underlying task list file. Of course, that makes everything so much harder to implement in a bug-free way. I have been discovering and trying to fix bugs over the past week or so. I have been messing with the lowest-level code in my app far more than I would normally be doing at this stage in the game. I’m trying to finish up the version and release it soon. I will get there, but it makes me nervous to jump back into file coordination related bugs, when I thought I had perfected those features almost six months ago.

🎵 I never get sick of Lana Del Ray, especially when a song of hers shows up in my “Chill Mix”.

I think AppKit will be around for a long, long time.

My Hobby: Moving Files Around

I have found that my home server hobby is more a “moving files around” hobby. I have reached this conclusion based on the countless times I have found myself moving files from one place to another.

My FreeNAS media server

I have run FreeNAS on a HP N54L Microserver for over five years. It has been a fantastic server. I bought it, a slightly used review unit, loaded with four 500 GB drives that it would not have normally come with, for a song—less than a new one with no storage drives included. Over the years, I updated the storage (now I have 16 TB total, with 8 TB usable space, set up in a single RAIDZ2 volume), and the RAM (from 8 GB to 16 GB). Over that same time period, 8 TB went from an impressive amount of storage to something a relatively inexpensive single drive could handle.

What those single drives don’t have, however, is redundancy and data integrity features. My little FreeNAS server has that, thanks to the ZFS file system. At several times in my home media streaming career, the external hard drive I used to store my media files died, and I lost all my data. Thankfully, no important personal data, like my photos, was ever lost, but the experience was upsetting enough not to want to repeat any more.

Hard drive failures can happen to anyone, at any time, even if you have a nice server rather than a Raspberry Pi with an external hard drive attached via USB. Less than a year after I upgraded my FreeNAS server’s drives, one of them failed. The FreeNAS server emailed me about the error, and its UI showed that my drive array was operating in a degraded state. I quickly ordered a new drive, swapped it out the next day, and never lost a bit of data. (I returned the failed drive for a free replacement, so now I have a replacement available, in case I ever need it.)

File servers fill up, if you let them

FreeNAS has been stable, reliable, and a joy to use. One thing I have learned from running it, however, is that its file system, ZFS, degrades in performance when a volume (a pool of drives) is more than 80% full. FreeNAS will warn you about this threshold, but I never took it too seriously, because poor performance is mostly an academic concern when all you are doing with a server is transferring a few gigabytes a day. I do like to silence warnings, however, so I normally have to prune my media collection, or move some videos I want to keep, but am unlikely to watch again soon, to external, mostly cold, storage.

Of course, where is that old, external drive with my files on it? I have no idea. So, this week, when my FreeNAS server filled up way over the 80% warning threshold, I decided, rather than continuing to free space by deleting movies and TV series that I didn’t want to delete, to add some more redundant storage to my network, and move the old files there. This decision was mostly based on having some extra hardware lying around, unused. I have a 2 TB, two-bay Seagate NAS, which is a little, Linux-based server with a consumer friendly web UI for administration. Unlike FreeNAS, it is very locked down, and unlike my HP microserver, it has only two drive bays rather than four.

At any rate, I set that up again and started moving some files to it, which sounds simpler than it really is. I am cherry picking files that are less likely to be accessed to the new server, so I have to go through everything I have, to some extent. Because the files either number in the thousands (like music files) or are multiple gigabytes in size (like video files), moving them has been very slow. Because the Seagate NAS’s filesystem (EXT4) is different than the FreeNAS filesystem (ZFS), there are other interesting problems, like file naming rules, that trip up file transfers. Because these are two different UNIX-like systems with different users configured on them, sometimes there are permissions issues that prevent files from being moved, renamed, or deleted.

As cool as it is to stream movies and music throughout my house, making it all work requires, from time to time, a lot of low-level file transfers. It has been taking a lot more time and attention than I would like.

This week, Apple Music’s recommendations for me are completely ruined by all the children’s music I have to play in the car for my kids. Do I have to “dislike” all children’s music in the app now? I can’t be the only parent with this problem.

Since I started dogfooding my new Mac app, I have found a few new bugs that I never noticed before. That “having never noticed it before” feeling is so weird sometimes that it stops me in my tracks.

After months of development, it feels nice to be testing my newly updated (completely rewritten) Mac app on a day-to-day basis. I keep finding bugs here and there, which is the point of using it all day, but I am nearing the finish line.

🎮 The biggest lie I told myself this week is “I will not play ‘Hollow Knight’ for hours tonight”. Well, 10 PM through 1 AM last night were lost to an enjoyable romp through late-game bosses and achievements.

I think I need some time late in the evening to listen to music with my really nice headphones and plug away at mostly solvable problems in Xcode just to feel normal. It was that way tonight. I fixed some bugs, inched closer to a releasable build, and don’t want to go to bed.

Hadestown

🎵 I’m giving “Hadestown” a first listen tonight. I never heard of the show until today’s Tony award nominations. , which surprised me, because I try to keep track of all the Broadway musicals. I thought that this was another very weak year for new musicals, so I am happy to learn of a completely new one. I hope that it is a new classic. I’m not sure, though, how closely the “Hadestown” on Apple Music resembles the Broadway version; I read that the show went through a bunch of changes over the years.

After seeing “Game of Thrones” and “Avengers: Endgame” over the past two days, I can now breathe again and use the internet like a normal person.

Initial impressions of Reeder 4 for iOS

I’m trying to get my mind around Reeder 4 for iOS. It looks great, has a very nice article view and the smoothest scrolling around, and features an excellent use of animation throughout the app. I miss the (admittedly old-fashioned) direct sharing link option (which I used for Pinboard) and the old gray theme (the new dark theme is darker). The J and K Emacs-style keybindings are welcome, but it puzzles me that arrow keys and the space bar are not allowed for navigation.

I normally wouldn’t post pictures with family members in them on my blog, but I’ll make an exception for this one. Me wife and son are kind of hard to spot in it.

Monmouth Battlefield State Park

mp-photo-alt[]=

Carole Cadwalladr: Facebook’s role in Brexit – and the threat to democracy

I listened to this TED Talk yesterday, via the TED podcast. Carole Cadwalladr’s message was chilling but not at all surprising, considering just how much news there is about how Facebook (mostly) is abused to undermine trust in facts, in institutions, in each other, and, ultimately, in democratic elections.

Dark money flowing into ephemeral, misleading, highly-targeted advertising is rightly identified as the leading cause of these problems. Sometimes I think that if the advertising element were removed from Facebook, a lot of these problems go away. After all, isn’t the problem that people can pay to publish whatever they want, targeted to whoever they want, and there is no tradable record of it anywhere thereafter? But after thinking about it for a little while longer, I think that the advertisements are only part of the problem. The algorithms that target content, wherever it comes from, to the most engaged (most gullible?) users, are another huge part of the problem. People will spread user-generated misleading nonsense almost as fast as the targeted advertisements will spread.

I have concluded that the human brain isn’t well adapted to the scale, speed, and the algorithmic targeting of information that social media sites. Those are the very things that make a site like Facebook work. These kind of websites are flawed because our brains are flawed. That’s a problem that is not possible to solve.

Monmouth Battlefield State Park

🎵 Nancy Wilson, who I have known about forever but have never really listened to, is awesome.

Holmdel Park on a cloudy day

Longstreet Farm

mp-photo-alt[]=mp-photo-alt[]=

Longstreet Farm

mp-photo-alt[]=

As much as I love Auto Layout, I also, in equal measure, hate it, too—mostly when I can’t figure out why I can’t get something to work.

I took my son, in the stroller, on a long, long walk through a local park on Sunday, while my wife and daughter did an indoor activity there. It was so nice to walk for an hour or so outdoors, in warm weather, while the trees were blooming.

I did not ever expect to see giant ray-, octopus, and squid-shaped kites, but now they haunt my dreams. Thanks, Point Pleasant Kite festival!

mp-photo-alt[]=mp-photo-alt[]=