Tag Archives: technology - Page 3

Refusing To Be A Victim

I’ve made a couple of posts about my Plex server and recently how I’ve been trying to clean up the files and metadata, specifically, the album art.  Using a self-written utility to audit the artwork dimensions and a downloading utility to find better versions, plus the effort of scanning and cleaning artwork that has no high quality option, I’ve done pretty well.

The next step was to clean up – actually add – the artwork for artists.  It’s a smaller effort, only 600-some items instead of 1600 items.  However, I wanted to get through it easily.  This process requires a bit of explanation on how Plex handles things.  Some of this I learned painfully as I went.

Plex gets a lot of its data from Last.fm, which is really cool and pretty effective.  However, when you don’t want to use that data, you have to disable that “agent” for your library.  Because I was manually managing the artwork on my library, because I wanted hi-res art, and I also wanted the specific original cover instead of the cover on the latest remaster of the album, because of all this, I set everything in plex to manual.  No last.fm anywhere.  That was good.

However, that also meant I had no artist images or bios.  Since I had cleaned up my album art, I wanted to now download artists from last.fm.  I wasn’t going to be picky about images there.  So I re-enabled the last.fm agent and stumbled around trying to figure out how to get plex to refresh the artist data from last.fm.  It’s important to know that the command to use in the artist menu is “Match”.  That will allow you to pick an artist from Last.fm for which to get metadata.

It’s also somewhat important to not use the command, “refresh all metadata”, because that caused Plex to utilize the newly-enabled last.fm agent and download all the data for my albums again.  That wiped out over half of my 1000px covers with 300×300 images.  When I saw this, I was devastated.  The worst part is that even if I used my auditing utility and worked my way through those hundreds of albums, the image picker in Plex gives no indication of which image is small and which is large.  It shows them equally at 150×150.  It would literally be a blind guess between 2 and 4 different images for 900 albums.  It’s not reasonable to accomplish.

I resolved to rebuild my Plex database from scratch.  That would wipe out all the effort I made on the artist artwork, but at least I could preserve my work on album artwork.  I would also lose hours I spent building my playlists.  And I figured if I was going to wipe out the database, I would try some more aggressive actions against it.

My auditing utility has only ever done database reads.  It doesn’t do any updates.  But I spent some time restructuring the code and adding a new feature, which I descriptively named, “replace art with largest version.”  See, Plex never gets rid of things, it just accumulates.  My data folder used to have 44k files in it, but after the last.fm influx, it now had 124k files.  All of my old artwork was there, too.  I just needed to scan and compare sizes, which is what I built my utility to do.

And within a day, I ran my new code and updated all the records to use the large artwork I had added previously.  It worked just as planned.  So now, I have my large artwork back, my playlists are still in place, and the artists artwork is still there.  It seems that anger is an excellent motivator for progress.

Teamviewer Farewell

This isn’t really a “biggest and bloatedest” post, but it is in the same kind of vein, since it involves leaving behind a company that I once really enjoyed.  This time it’s the great remote-access utility, Teamviewer.  I was first introduced to TV long ago when I was doing remote computer assistance (an Uber of computer helpdesks – way before its time).

As time went on, TV got more and more advanced.  They added many new features specifically for providing helpdesk services, none of which were really useful to me.  All I needed was remote desktop access and sometimes file transfer.  I didn’t need chat, or ticket logging, or video capture, or lots of other things.  So I guess in a way, TV did become big and bloated.

But the software itself was impeccable.  Very well-written code and always in touch with current Microsoft security and coding practices.  It’s software that I would buy, but unfortunately, it wasn’t really for sale.  TV’s business was business users and consumers were trusted to use the software for free for personal use.  That sounds really good and fair, right?  It is, but I did feel a little guilty about it.  Not because I was using it for business use, but just that I used it SO much.  I would love to buy a license, but the cheapest you could get was a $50/mo subscription.  Ohhh, I hate subscriptions.  And $50/mo is not really reasonable (to me) for personal use.

So I kept using it for free, until one day I started getting notices that TV detected I was using their software for business use.  I don’t know exactly what they noticed that seemed suspicious.  I have a couple ideas, but I don’t know for sure.  If I choose to really think about it, it’s worrisome that the software is actively watching what I do to catch me doing business operations.  Anyway, I ignored the warnings, because they weren’t applicable.  When I rebuilt my computer and connected to it remotely, I got a much more severe warning.  It declared that I was using the software for commercial use and my connection would be terminated within minutes.  Subsequent connections also got cut off as well. 

I filled out an online form to appeal their judgement, which they said would be responded to in about a week.  But I pretty much knew that my time with Teamviewer was over.  It was time to find another remote access utility.  And the one I eventually chose was the free one built into Windows – Terminal Services or Remote Desktop Connection.  I was a little hesitant to implement it because of the reputation RDC has for being vulnerable to attack.  However, taking my time and considering the risks made me more comfortable in the choice.

For most RDC breaches, attacks are made using common account names and weak passwords.  Neither could be true in my case.  In fact, my configuration is more secure than Teamviewer.  With TV, an attacker needs two pieces of data: the computer ID and a password.  To attack me, you need an IP address, a custom port number, my username and my password.  That’s twice as many elements needed, and the potential values are vast.

So, that’s how I now waste the day away when I’m at work.  I’ve disabled Teamviewer, so that’s one less attack vector for my computer, which to be honest, always spooked me.  TV has not had any account breaches that I know of, but their user database would be a goldmine for hackers.

Having To Start Over

A title like that is pretty ominous considering I just rebuilt my computer, but the damage is not system wide, I’m just dealing with one application.  But as applications go, it’s a big one.  I have to rebuild my Plex library, which means redoing all my playlists and the extensive metadata improvements I had made over time.

After I had gotten all my files moved from my old drives to the new ones, I knew I had to figure out how to restore my Plex database.  I knew there was a backup that ran every 3 days, but I didn’t know where that backup was or how to restore it.  From research on the Plex website, the only thing I really got out of my questions for restoring was to copy the entire data folder from the old computer to the new one.  Well, ok.

And not unlike my amazement at Lightroom’s massive file structure, Plex was the same way.  Tens of thousands of files got copied to my new hard drive, then I reinstalled the server application and fired it up.  No initial errors, which is great, but when I went to the home page and the music library page, all I got was an error message.

In my mind, I sort of expected it.  The reason for that was because I hadn’t installed any application updates in some time.  Why should I?  The features added didn’t pertain to the music portion of Plex, and there weren’t any security fixes, so I never needed them.  Why potentially introduce bugs with a new version if what I had was working fine?

Well, this came back to bite me when I tried to restore a database for an application version much older than what I installed.  And I had no idea what version I had been running before, so there wasn’t an option to install a matching older version.  So there you go.  A mismatched application and database equals a non-functional application.  Time to start over with a new database matching the current application version.

Rebuilding the playlists will be tedious, but I have a pretty good idea of what I want in them, and to be honest, I really only played three or four of them, so I can start there.  The metadata updates will be tedious as well.  I had decided that I was going to use the plex server as my definitive source of collection info.  But now, maybe I will start using Discogs, which can get me info on my collection in greater detail and more expediently, using their mobile app.

I’ve taken a “no rush” attitude with most everything in my life now, so I know eventually it will all work out, when I’m ready for it to happen.

Lightroom Data

When I was migrating all my files from my old hard drives to my new ones, I had a slight issue where my documents and pictures didn’t copy, because of a permissions difference.  When I resolved it, I had to copy the files again.  This also meant I had to wait for them to copy and stare at the progress as it made its way through.

While copying the pictures, I was stunned as it processed the Lightroom folder.  I had tried out Adobe Lightroom a while ago and ended up not using it because it was just too much.  And now I see it was more than “too much” in the application side, it was outrageous in the data side as well.  I don’t remember how many files I had imported into the Lightroom catalog when I was evaluating it and I didn’t really know what was happening in the backend while it was processing.  But what happened was a new folder was created to hold the catalog and preview files.

Those preview files – holy fuck.  When the copy was complete, I had to see for myself what had actually been done.  I checked the properties of the Lightroom folder and was floored by the result.

image-1

28k files and 23k folders!  What the fuck!

It’s not really the size that bothered me.  The thing I didn’t understand was why there are so many files and folders.  And every one is named unintelligibly.  It’s not like you can understand what you are looking at when you dive into those folders.  So why not use some sort of database file instead?  At least then you could get some query functionality out of it.

So it was with great pleasure that I deleted that entire folder.  That’s 50k file entries I don’t have to ever worry about anymore.

The New Install

A few posts ago, I talked about how I was going to be upgrading my computer to take advantage of new storage.  And that involved swapping out all the important parts of my computer: motherboard, CPU, RAM, and drives.  Well, all the parts came in and sat for a few days, because I know, if I’m going to start a project of this size, it best be in the morning, so I have all day to recover from screwups.  I decided Sunday would be the day and I woke up fairly early to get a start.

The first thing I did was get one last backup of the old computer and break the mirrored drive set.  Then I got to work replacing the guts inside the case.  I spread everything out on the kitchen table, old and new components everywhere.  It all went pretty smoothly and even with taking my time, I was done within an hour.  With everything back in place and ready to go, I brought it back to my office and plugged it in for a smoke test.  All the drives in the computer were blank, so there was nothing to really boot up.

But, to my dismay, I got nothing.  Fans spun up, but no video and no POST beep.  Sigh.  My prior experience says that this is usually a short somewhere.  And what has always been a good troubleshooting step for me is isolation.  So I took everything out of the computer except for the bare minimum.  On startup, no change.  Big sigh.  I took the computer back to the kitchen for some reassembly and inspection.  I didn’t see anything wrong with the mounting posts or anything that could short anything else out.

When in doubt, read the manual, right?  And while I was paging through it looking for some connector I missed or hooked up backwards, I noticed that yes, I did screw something up.  I put the RAM into the wrong slots.  What an idiot.  Ok, fix that up and put everything back together again.  Take it back out to the office and start it up.  Still no video and no beep.  What the fuck.  Back to the kitchen and tear everything back out.  I then decide to consult the Internet, which I know is going to be useless since my symptoms are so vague.  How can I determine if the board or CPU or RAM is bad?  I don’t have extra parts to swap out and isolate the differences.

The first result I clicked on for “no video, no beep” had a confident first response of, “bad power supply.”  Really?  I just changed out this power supply a year ago.  And the old computer was working fine with the same power supply.  BUT, I had no other ideas and I did have a backup power supply (that old post means something now).  And when I put in the new power supply, well, you probably know what happened.  It started up.  I don’t fucking get it.

Now.  Hardware complete, now software.  I had my new M2 SSD drive and my two 8TB drive in the computer ready to go and I had the latest build of Windows 10 on a USB drive.  As has been the case with Windows for some time now, the installation process was quick and easy.  When I went to set up my two big drives to hold all my data, I lost my shit.  Windows installed a recovery partition on one of the big drives.  That totally fucks up my mirroring plan for the drives.  Yeah, it’s time for lunch now.

After a nice calming lunch, I came back and reinstalled Windows without the two 8TB drives attached.  This time, the recovery partition was placed on the proper drive and I was ready to move on.  Before getting into the mass data transfer, I ran Windows update over and over again until I was fully patched.  The last thing I needed was a restart in the middle of my data copy.  It’s around 2:00 right now; about 4 hours of effort so far.

I started creating the virtual drives to hold the files from my old drives and I found out that creating a 1TB file is not a quick process.  It’s something like a hour or more of waiting.  Then the file copy is nothing speedy either.  I got the 50GB drive copied over and started working on the first 1TB drive – the first of three.  While that’s going, I installed software from the Internet that I didn’t have on my archive drive.  That’s one thing about this process is that there’s dependencies, where I can’t do this until this other thing is done first.  And one of the big ones is that I can’t install a lot of software until I get all the data copied over.  So I must work and wait.

To be continued….

The Whim Becomes A Wham

The other day, I jumped on an idea to upgrade the storage in my computer.  Lucky for me it was Amazon Prime day, so I got a pretty good deal on a couple of 8TB hard drives.  I laid out the technical idea in another post, which at the time seemed all very logical.  It’s been about six years since I built this computer and it’s been serving me very well all this time.  The only thing it really needed was a better storage structure.

With the new drives arriving in a couple of days, I began planning the conversion.  I don’t do much hardware work anymore, just software, so I have to look some stuff up as I go.  In order to use a drive that is over 2TB in size, you need to partition it as GPT (guid partition table).  All of the drives I have now are 2TB or less and all of them were MBR (master boot record) partitioned.  So the first thing I checked was if MBR and GPT drives could coexist.  I didn’t really get an answer on that, because my question changed to: does my computer support GPT partitioned drives.  And the answer to that turned out to be, no.

In short, I had two drives coming in the mail that I could not use in my computer.  No problem (actually a minor problem), I’ll just upgrade the motherboard.  As I soon found out, you don’t just upgrade a 6yr old motherboard.  Technology has moved on.  Ok, so I’ll get a new motherboard and CPU.  Sorry, your RAM isn’t compatible with newer motherboards.  Ooook, I guess I’m buying a new motherboard, CPU, and new RAM.  Essentially, I’m buying a whole new computer.  Falling down a technological rabbit hole.

And that kinda sucks, because my computer is working just fine.  It doesn’t run slow, it doesn’t crash, it’s fine.  But in order to utilize modern hard drives, I need a modern computer.  And it kind of shows that I’ve gotten off the technology train a while ago.  Computers now are super-powered, because they’re used for a lot of really high-powered gaming.  I don’t game, so I don’t need that level of computer.  Good for me, I guess.

At this point, the thing I have to do is evaluate what I need from my new motherboard.  When I bought my current one back in 2012, I was coming from a small desktop and I wanted as much expandability as possible.  Over time, the cards I had installed in my system came and went based on what hardware I was using, and now, I have to determine what’s really being used anymore.  For example, I have an expansion card that gives me more USB ports and FireWire.  I don’t think I have anything plugged into that card at all.  I have a card that gives me eSATA and also a couple extra SATA ports with RAID.  I don’t have my eSATA dock anymore and I use Windows RAID now.  My motherboard has 6 SATA ports – plenty.  So what’s remaining?  I know I have a video card and a video capture card.

Oh but wait, the motherboard has some new features on it, like support for M2 SSD drives.  Do I need something like that?  Well, it’s pretty cool, and the drives are pretty cheap.  Geez, I paid a couple hundred for my 256GB SSD and now, I can get one twice as big for $55.  Again, do I need it?  Well, I am modernizing my computer; I don’t want to be left behind again, right?  And then there’s the video card.  It’s pretty old, too.

Hold on, stop.  Let’s just focus on what’s needed here.  I quickly placed the order for CPU, motherboard, and RAM.  $311 total.  That’s now in addition to the $300 I spent on the new drives.  So back in 2012, I spent $430 on CPU/MB/RAM, plus a case, and this year it’s $311 for CPU/MB/RAM.  Seems like things are about the same.  And that’s what, about $50/yr to stay current?  Not too bad.

A Whim

Sometimes, well, maybe more than sometimes, I am prone to impulsiveness.  I’ll get an idea and the more I can justify that idea, through a series of tiny connections, the more likely it is I am going to act on it.  Sometimes, I can stave it off by focusing on the financial aspects of the idea, and other times, it seems the cost isn’t really important or maybe I do more rationalizing of how the cost is justified.  And that is where I’m at today.

This whim is technology-based, so it hits on a few different pleasure points.  It’s a new idea for me, so there’s the novelty of trying it out.  It’s an improvement, so I can justify that it has value.  It supports another of my on-again, off-again obsessions – archival, so there’s indirect benefit as well.

So here’s the idea, which probably won’t make any sense to non-technical people.  I’m going to replace all the hard disks in my computer, and make all the drives virtual.  I’m using some terms very specifically there (and I’ll be inconsistent everywhere else) – I say “disks” to describe the physical hard drives and “drives” to mean the individual drive letters.  Most people have a C:\ drive on their one hard disk.  My system is a bit more complex, for organizational purposes.

Here’s what my computer’s Disk Manager shows.

disk-mgr-1

I have five hard drives in my computer, one of which is an external USB drive.  What you see in the image is that C: is one hard drive, D: and S: are on another drive, and Y: and L: are paired up on two mirrored drives.  The M: drive is a virtual drive whose file is held on L:.  The B: drive is the external USB.

If you look at the free space of my drives, the M: drive is only 6% free.  This drive holds all my music files, so if you’ve read any of my blog, you would know this space is going to run out soon.  Then there’s other little things that are bothersome.  D: has 95% space free, but I can’t really use it for anything because it’s unmirrored (and thus vulnerable to a drive failure), and also, it’s on another drive anyway.

So, again, here’s the plan.  Get rid of Disk 1, 2, and 3 and replace them with two 8TB mirrored drives.  Right there, that’s nearly 4x my current storage.  Then I could create D:, S:, Y:, and L: all on that mirrored drive.  That would be cool and all, but when it comes to resizing and reorganizing partitions, it can get messy.  For example, taking 100GB from D: and adding some of it to S:, you end up with broken pieces of the drive.

image

To avoid this, and be cool and modern in the process, I’ll do with all my drives what I did with the M: drive.  Everything will be its own virtual drive stored on the mirrored disks.  To reiterate, M: is actually a file on the L: drive.  M: is 500GB and L: has a 500GB file on it.  With my new design, I’ll have one massive 8TB drive, with five large files on it, one for the D: drive, one for the S: drive, etc.

What’s that gain me?  In the case of Disk 1, shown above, it would just be one partition, D:.  S: would be on a totally different disk, say Disk 5.  The drive will always consume 100% of the disk it is on – no sharing or splitting.  So when I expand or shrink the virtual disk, it will always be 100% consumed by the drive.  The change in free space will be reflected in the 8TB drive hosting the file.

What else do I get out of it?  Well, I don’t have to use up the 8TB right away.  I can build a temporary drive for whatever purpose and destroy it when I’m done with it.  That’s kind of the way things are here at my workplace.  We have a massive drive array and whenever we need a new server, we just carve out some drive space and make a new server.  It’s one step closer to me having a entirely virtualized network.  Also, by not using up all the space at once, I can grow the individual drives as they need it.  I don’t have to try and anticipate how much I’ll be using.

Looking back in history, the last time I discussed my computer storage was over five years ago.  So that’s actually a really good run for the 2TB drives I’m using now.  It’s one more bit of justification for me to indulge my whim.

My Non-Concern For The Coming Robot Apocalypse

I’ve heard the warnings.  I’ve read about the myths.  They say a vampire can’t enter your house unless invited, and one would surmise the same would apply to robots.  But I have added a new automatron to my brood, without consulting its natural-born enemies, the cats.  It’s a new Roomba, my future Terminator.

Since I’ve recently replaced all the carpet in my house with laminate, I now have all hard-surface floors, which is a virtual playground for a Roomba.  I’ve considered buying a roboto vacuumo a few times in the past, but, damn, they were expensive.  Now, it seems you can get the older tech pretty cheaply, so I was able to justify the purchase based on the lack of interest I had in cleaning my floors and the amount of stuff that was on the floors.

With two cats, the biggest things I have to deal with are: cat hair, cat litter and the dust that comes with it, and shredded cardboard from their scratchers.  I suppose I shed a lot of hair, too.  But, without kids or dogs, I don’t really have to deal with wet things: puke, slobber, drinks.  So a Roomba to pick up all the dry items blowing around like tumbleweeds is perfect for me.

But, back to the idea of extinction.  I’m certainly not afraid of robots killing us off.  Even watching Boston Dynamics nightmare videos doesn’t do it.  I have no fear because really, robots actually suck pretty bad.  I mean, they work, but they’re in no way autonomous.  It’s also why I will never own a self-driving car in my lifetime.  Autopilot?  Mmmm hmmm.  Sure.

My first experience with the Roomba was when I set up the charging base and set the vac down on it.  It lit up and started charging.  I went off to read the manual and I heard something talking.  The robot was talking to me.  I have no idea what it said, but when I came back, it was blinking a couple of lights at me.  They looked like alert and battery lights.  I assumed it was because the battery was run-out dead and needed to get an initial charge, but an hour later, they were still blinking.  I pushed some buttons and it spoke to me again.  “Charging error 1!”  Ok.  Research says this could mean a failed battery or a poorly-seated battery.  I took the vac apart – and to iRobot’s credit, this is extremely easy – and pulled the battery and reseated it.  The Roomba was now charging.

My next experience was when it was on its maiden voyage around the house.  I was satisfied with how it was behaving and the cats were generally spooked by the same.  I went out to dinner and in line for my food, I get a message on my phone. “Clean roller brush!”  Yeah, this vacuum can complain to me remotely.  How wonderful.  Since I’m away from the house, I am unable to serve my robot’s demands and have to wait until I get home.  I find that the little death machine has sucked up a washcloth and became inoperable.  I’m so worried for my life.

The last experience of the night was when I was winding down for bed and the Roomba was wandering around under the watchful eye of the little cat.  I heard it bumping into things over and over and over.  I looked across the house to see it had gone into the bathroom and shut the door, trapping itself in the room.  I’m sure the floor is pretty clean in there now, but again, I’m not worried that robots are going to figure out every potential way a door can be blocked in order to get through.

And that’s my first night with my new Roomba, the T-671.

Changing My Tune With A New Band

I posted before about the recent death and dismemberment of the Microsoft Band.  I had pretty much given up on fitness tracking and fitness in general about a year ago.  In that time, as you might expect with someone not as young anymore, with more health issues than none, it had a detrimental effect on my wellbeing.

Without dwelling on the negative aspects of that situation, I powered back on again.  With a new blog tagline to lead the way, I began mentally preparing myself for change.  Positive change, I mean.  I’ve had plenty of other changes already.  Along the way, I happened to see something about a high-feature, low-cost fitness tracker, the Huawei Band 3 Pro.  Very interesting.

In my mind, I was just imagining it as the next version of the MS Band (which stopped at v2), but the design was more standard – no extra bits in the strap and clasp.  But, it did have the one feature that kept me from immediately replacing my MS Band – built in GPS.  And the price was about 25% what I paid for my last MS Band.  And it’s waterproof, which doesn’t mean much to me, but might for others.

I bit the bullet the other day and ordered one, in blue of course.  I’ll be able to use it this weekend.  In the meantime, I’ve begun walking on work breaks again, which is something that ended with the departure of AK, right around the time I gave up on my Band.  Of course I would begin this just as the furnace of summer heat is kicking on.  But a start is a start; building momentum and all that shit.

So, to remember a little about my last post, I’m putting my trust in a new company to let me use their hardware and software for as long as I can.  Will the hardware outlast the software this time?  We’ll have to see.  At least I won’t have paid too much for the experiment.

I Made It Work Again

Over the weekend, I made a roadtrip in the interest of thrift shopping.  It was a generally easy-going, low-stress trip that turned up plenty of CDs, mostly smooth-sided cases.  Along the way, I also picked up an early CD player, 30 years old, for $7.  I figured it would be interesting to have an opportunity to experience newer and older players and see if I could determine sonic differences between them.  The price was good, so why not?

When I got it home and fired it up, I found out why not.  It wasn’t operational.  When powered up, it would immediately eject the CD tray.  Pushing the close button did nothing.  If you pulled the tray out a little further, the close button would work, but after a second or two, the tray would eject again.  Huh.

My first thought was that there were some sensors that were dirty.  The ones that tell the player when the tray is fully opened or fully closed.  It seemed like something I could fix.  So I opened the case and disassembled the tray assembly.  I didn’t really see any sensors like I expected.  I did see a pressure switch that would toggle when the drawer was open or closed.  Opening and closing the drawer, I could see that when closing, the switch was not being contacted.  I think I was on the right track here.

Considering why the drawer wouldn’t close fully, I had a memory of a web page I had read about CD player troubleshooting and the primary takeaway was that the great majority of player failures can be fixed by replacing the drive belts.  I inspected the drawer assembly and found only a single belt.  It seemed to be in good condition, maybe a little loose, I don’t really know.  But I figured I could change it out easily and maybe that would do it.

I ordered a pack of various sized belts from Amazon and they arrived the next day.  Without too much trouble, I installed a new belt of near the same size, maybe a little smaller.  The reassembly was a little sketchy since I wasn’t exactly sure where to set the gear so that the open/closed pressure switch would get hit in both directions.  But for my first test, the drawer stayed closed when I powered on, which it should because the switch indicated the door was closed.  I pushed the open/close button and the drawer ejected.  I checked the switch and it indicated the drawer was fully open.  I pushed the open/close button again at the drawer closed.  Then I saw something I hadn’t seen in previous attempts: the laser lens moved up and down trying to focus on a non-existent CD.  And the drawer stayed closed.  I ejected the tray and put a CD in.  I closed the tray and the CD spun up.  I pressed play, the CD spun and the display counted up the time.  I fixed it!

That’s a plenty good feeling to repair something so easily, just a single part replacement and the part was a tiny piece of rubber.