Wednesday, May 22, 2019

The Destination Already Has a File Named ...

Dialogs which force you to make a decision like this are very unhelpful.

When a destination folder already has a file with the same name, the copy command should check the files for identical contents.  If they have identical contents, no question need be asked, the copy is as good as done already.  If they don't have identical contents, then the question needs asking, but the dialog should at least include some other information, such as:

1) The sizes of the files.
2) The creation and modification dates of the files.

If you're worried about the speed for file comparision, you should not be.  At least on Linux systems I've used, giant files and even whole directories of giant files can be compared in a few seconds and sometimes even under a second.  Meanwhile, antiquated (and actually newer in conception) file comparison tools on Windows are unbelievably slow.  I believe a good Windows program could do it as fast as on Linux, but atomic file operations have never been a priority a priority for them (or Apple).

If you're still worried about the speed of file comparisons, it would at least be a step forward for dialogs to include the sizes and dates so you could make a sensible judgement without having to open more windows for file examinations yourself.

Sunday, May 5, 2019

Random Slideshows and Creating Playlists

I have a lot of experience with random slideshows, and music playback, both in use, and frustratingly trying to make them better by programming them, using well regarded random number generators seemingly suitable to the task at hand (I believe I used 48bit repeat--and not the current standard Mersenne Prime generators).

Somehow it always seems that random isn't really random.  Or if you just leave something running, and keep coming back to it at irregular (but perhaps not quite random themselves) intervals, it seems you mostly see or hear about 10% of the entire list contents, and there's at least 30% you never ever see or hear not in years.

No matter how large the list, when randomly selected it never appears to take long to start seeing duplicates, and those duplicates are the ones that seem to occur over and over.

I'm not sure of the validity or mathematics of this, I'm just reporting my experience.  Many years ago I even gave up with random song playback on my Sonos system for the reasons described, and just started playing through my music library sequentially.  I ultimately gave up on that also, and for now, I have no satisfying "automatic" playback of my music library, nor any particularly good playlists.  With all my vast collection of purchased and available music...I find myself mostly listening to FM radio so my choices are simplified (which of 3 or so tolerable stations).  I've liked Pandora automatic selection, but even it can get tiring before long, and it's not uncompressed audio.  I haven't much tried the auto selection of Roon with my own library and Tidal HD.

For video, I devised and incredible picture viewing system, actually a hodge podge of programs running on my Amiga, which permitted me to create playlists on the fly, and add to them, and navigate within them, all from just a few pushbuttons on a standard Sony remote control.  THAT was the best system I ever had, but it required exhausting picture format conversions that couldn't be completely automated because the PC to Amiga transfer wasn't reliable enough.  I finally just abandoned the system when my old video connections to the computer room were withdrawn temporarily...I could set it up again now with the new professionally wired video connections but I haven't bothered, in part because the computer room is already and still such a mess.  So, the best program ever, is lost to ruin.  I hestitate to program such things on more "modern" computers.

One thing you may find true, playing random songs is somehow going to skip lots of songs, you'll hear the same couple songs from every album and never the others, so it seems the best thing is to select Albums randomly, not just songs.  That way at least you hear all the songs on an album, if you listen long enough.

In my program, there was a history so even a random slideshow could be paused and gone back through.  The history of the current process (since when the Amiga was rebooted) was channel "0", which could be reselected at any time after going to another channel/playlist which was specified by a number with as many digits as desired.  Once a playlist was selected more could be added to it.  Also individual pictures could be saved, on the fly, to any number with a leading 0.

Creating playlists is something that needs to be able to be done on-they-fly, as you are otherwise listening or viewing things.  Otherwise, there's never enough time.

*****

Perhaps the apparent non-randomness at least party stems from real duplicates, and near duplicates.  I also think that leaving a stream running, and then sampling it at the same times each day, stresses the randomness properties of oldfashioned random number generators.  And maybe other things I haven't figured out yet.

One way of dealing with it is daily pruning, removing things that have gotten stale, and adding new things.  Seemingly just adding one thing is enough to change the mold and get you a new subset of the main set.