New Desktop Upgrade

My new desktop I mentioned at the end of my last post arrived. I am fairly good about adjusting my workflow when changes or upgrades happen, but this particular change in it’s nature, is incredibly disruptive. My whole process kind of stems out from a source, which for the most part, is either my laptop or my desktop. If I were to get a new laptop, not much would change. Most of that workflow runs off of shared drives or cloud files. On the base level, the desktop works the same way, the real trick I get to deal with is the ripple effect downstream, which I will get more into in a bit.

The machine itself runs fine. It’s much much quieter than I expected it to be, which is nice. The crazy Neon lights aren’t as slightly annoying as I expected, especially once I figured out how to adjust them to be a more toned down, non pulsating, single, cooler color. The day after ordering, I realized that I might need new monitor cables, I checked and sure enough, all of the outputs save one are Display Port. My old set up consisted of a display port adapter, a DVI port and an HDMI out, all three to DVI on the monitor end. I may update the monitors later but it’s not necessary now.

The inside is crazy empty and clean. I’m not quite sure yet where I would even put additional hard drives, though I suspect they mount to the sides.

It certainly handles every game I’ve thrown at it incredibly smoothly even with maxed out graphical settings. My current plan is to keep this machine relegated mostly for gaming (a bit more on this later), so i will keep it fairly clean and free from excess software. So far I’ve tried it out with Forza Horizon 4, Overwatch, Black Desert Online, Minecraft, Control, Quake 2, and Quake 2 RTX.

The RTX is really quite remarkable. The reflections are really neat and the shadows work very well. I look forward to finding more titles that take advantage of the ray tracing capabilities.

The Ripple Effect

Where the real change is happening is down the line. For the sake of maybe alleviating some confusion, I am going to go ahead and use the Network names for my computers. The old workflow consisted of my Windows 10 Desktop, Squall, that I originally put together back in 2012. It still runs everything perfectly fine, since 2012, I’ve bumped up the RAM quite a bit, updated to an SSD, and updated the video card to a 1050ti. Sitting under the desk next to that was Rinoa, am even older box, that I am pretty sure I got second hand somewhere, running Xubuntu Linux. Xubuntu because, it’s only 32bit hardware. It’s primary function was being a web server, for my Dashboard, and a file server. It’s got several old drives in it all shared on the network to dump less important files to, because I’m a digital packrat.

The new machine is Cloud. See a pattern here yet. If it helps my laptop is Selphie, my old laptop was Rikku, my old project server years ago was Quistis and before that Yuna, my family’s laptops are Ivine, Barret,and RedXIII. They are all Final Fantasy characters.

Rinoa running 32bit hardware has been a problem for a while. Several interesting projects I have found needed to run on a 64bit system to get up and running. It’s also woefully under powered for anything robust, like running a Minecraft Server. Rinoa has been desperately in need to replacing for a while. Which is where Squall comes in now. Squall, will become the “new Rinoa”. Squall will become the new project server.

Making this change isn’t easy, it’s still not done, and I’ve been working on it for the last week. Squall is also a much more capable machine, so it changes the workflow a bit. Where Rinoa ran headless, I’ve decided to keep Squall on one of my three monitors for now, and work with it using Synergy. I can offload the load of doing things like, running the web browser off of Cloud to Squall if I want. I also can use Squall for Discord and IRC.

The first thing I decided to do was to move the Web server aspect to a Raspberry Pi. I already had a Pi running a LAMP stack to host my WordPress Archive blob. Moving the basic Dashboard was easy. Copy the files, import/export the database, and it worked, no problem. The harder part was moving the backend processes. I’ve started doing a lot of combination projects, that often consist of some sort of Python or Bash script running that dumps data to a database, and a web based GUI. Like the Network Map, or my rudimentary Twitter Scheduler or the web based Download Queue system for a particular web video downloading software that shall not be named. Getting these to work on the Pi is trickier. Partially because I’d forgotten some steps. For example, I created some environmental variables to open the database with scripts, so I didn’t have to put raw log in credentials in them. I forgot how I had done that, so I converted them back to raw log in credentials for now. I have others that are looking for commands from packages that need to be installed that I’m not sure are available on the Pi.

I’ll get it worked out, I just need a bit more time.

I’m also not real sure I want to move TT-RSS to the same Raspberry Pi, just because it’s constantly polling. I am not sure I want to run that level of read/write on an SD card and risk losing my other files. I will probably just set up a second Pi JUST to run the TT-RSS Server.

The other major thing to move is the files. I started off by consolidating everything, for simplicity’s sake. I converted and consolidated up my video files on my NAS recently, which freed up a lot of space. I’ve been meaning to re-allocate some files off of Rinoa back to the NAS and I used the move as an excuse to do just that. At the same time I consolidated the remaining files onto the largest of the various drives in Rinoa, so I can start off by just moving one drive to Squall, to reshare on the network. Moving the webserver to the Pi also meant giving the Pi an extra USB drive, for more storage. The Video Downloader that Shall Not Be Named, pulls video files, which are larger. I set up a new network share from the Pi for “Working files” and moved all of the “working Files” folders from Rinoa to the Pi.

The process overall isn’t complicated, it’s just time consuming with large data moves and some configuration changes.

Physical Set Up

Another aspect to adjust was the physical set up. Initially I just pulled Rinoa out and stuck Cloud in it’s place on the floor. This was partially done because this was the best solution for cable lengths available until the new Display Port cables arrived. I’ve got some pretty good cable management going on and I am not a fan of cables just hanging all over, a side effect of 15 years of working around equipment racks with impeccable cable management standards. Once the monitor cables arrived, I undid everything and reran all the cables, putting Squall on the floor and Cloud up on the little floor shelf under my desk. The main downside in the end is that the cleaner cable solution puts the large side window on the new PC against the backside, so I don’t get to see inside my PC all the time. Thankfully, I’m not a big fan of this aspect of the machine to start with.

Rinoa is going to just sit behind the monitors on a shelf for a bit until I finish with her, but in the end, the plan is to retire that machine out.

Going Forward

I am actually almost more excited about the prospect of molding Squall into the new Project server than I am the flashy new Gaming Rig. The 64 bit hardware and 24gb of RAM means I can do a whole hell of a lot more than I ever could with Rinoa. I can set up a massive Minecraft server with a whole heap of worlds available. I can run Docker and everything that goes along with that, I can set up a robust and speedy OpenSIM world if I want. I also plan to continue to use Squall as my Video Edit machine, no need to bog down Cloud with all that extra overhead in software and disk space. I also can much more easily start playing around with VMs.

I could have done a lot of this before of course, but I find keeping all of that up and going on a machine you are also using for day to day use and gaming gets distracting, and you start running into resource use issues much more quickly.

Helping Myself to Ensure Better Productivity

I find as I get older, I am not so great at remembering everything that I really should be doing regularly. Not just necessary things, but things I want to to. I’ve been working out some better systems to push myself to keep up with all of these sort of little tasks.

Microsoft ToDo

Any ToDo list app works here, I use Microsoft ToDo. I used to use Wonderlist, but Microsoft bought them out and it’s essentially folding into MS ToDo. I try to keep my lists somewhat streamlined down so it doesn’t become a cluttered mess. For example…

The Reminders List. All of my regular reminders go here. Every week I get a reminder to take out the trash after work. The same goes for Recycling. I get daily reminders in the morning for taking my vitamin and just before lunch to take my Acid reducer medicine. I get weekly reminders for other regular tasks as well, such as redeeming my Forza Rewards in the game Forza, checking on the free PDF of the week on Drivethrough RPG, and redeeming the free game of the week on the Epic Game Store. I also have Monthly reminders for checking on several auto-withdraw bill payments, or changing the furnace filter. I’ve got an irregular reminder to change out my pajamas every few days because I can never keep track of how many days I have worn the same pajamas.

The Grocery List. It’s called Grocery, but it’s more of a general list of more pressing things todo or purchase. It is often, just groceries though.

General ToDo Lists. I have lists for movies or TV I want to watch, books I want to read, projects, and I might want to do someday in the future.

The Calendar

I have also started using my calendar a lot more aggressively. I have several sub calendars going on different types of events as well. I do keep some reminder style tasks on the calendar instead of the ToDo List app as well. The general difference is that ToDo List reminders are effectively “never ending”, while Calendar Reminders are more ephemeral and have a set period of time. For example, Hasbro was running a contest on their Instagram for ten days, I used the calendar to schedule ten days of reminders.

The calendar has become extra useful during this COVID-19 time as well. A lot of musical acts are doing online shows. And since my plan to go to more concerts clearly isn’t going to go anywhere at this time, I can at least set up events to remind myself when live shows are going on.

I also use it to mark out generic blocks for work events, so I can better keep track of what I might have going on for scheduling other activities like Doctor’s appointments.

Send To Device

Something else I have been trying to push myself on, is taking care of things *now*. Or at least soon. Often I would come across things I want to download, or little projects to set up and try, often while browsing on my phone. This used to end up in one of two things. I would leave the tab open forever on my phone, or I would book mark it and forget about it.

I use Firefox on my phone and my PCs, so the bookmarks all sync, but I still have to remember to check them.

What I have discovered that I’ve been doing more is the “Send to Device” feature. I can take a tab on my phone and send it to either my Laptop or Desktop, instead of book marking it. This way, when I sit down and open up the appropriate device, that tab will show up, and be in my face as a reminder of “Do this NOW”. It’s really helped with actually taking care of some quick tasks that I may find while on my phone, but aren’t convenient to do immediately.

Track All the Things

I am going to keep this short, because it really needs to be it’s own post, but I have started heaving tracking a lot of aspects of what I do with my time. I don’t really DO anything with this data, but it motivates me in two ways.

The tracking itself is a thing that pops up as a reminder of something that needs done. Not having anything to fill in, makes me feel a little guilty about my productivity. It’s sort of an angle of negative self reinforcement.

Two, I like doing it, even if nothing comes of it.

Like I said, I will probably do a separate post, but I have been tracking:

  • TV I watch
  • Movies I watch
  • Music I Listen To
  • Books I’ve read
  • Online Courses I’ve done
  • My Mood, 2x a day
  • How much Duolingo I do each day
  • Fitness (Steps, Push Ups, Sit Ups)
  • How often I shave or get my hair cut
  • General Health Issues
  • Gas Consumption
  • Basically everything

I use several apps for this and some spreadsheets. But more on all that later.

What I Use: Synergy

synergyLast post, I talked a bit about my new Multi Monitor set up.  I mentioned that I use a program called Synergy to handle using multiple machines with one keyboard and mouse.  It’s essentially a virtual KVM, only without the V, since everything has it’s own Video disrt play.

It’s not a free program, but it’s not expensive, and it’s well worth it if you use multiple machines in this manner.

The general gist of it’s use, one machine acts as a server, and other machines connect to it.  The server hosts the mouse and keyboard, and the configuration.  Out of the box, Synergy actually works kind of crappy with a multi monitor involved such as my set up.  The configuration is a simple drag and drop positioning grid, and it doesn’t care about how many monitors are on one system, it assumes one.

synergy_config

You can manually set up a more complex configuration pretty easily.  I’d recommend doing a basic set up and making sure everything is working well before delving into the complex realm.  I’ve found several tutorials online with complex formulas and jargon but the whole set up, in most cases, is a lot simpler.

Start off with your basic set up and save the configuration file.  Now, save it again with some sort of appended name like “edited” or “custom”.  This way you can always reload the original working configuration.  Also, you can save this configuration anywhere but ultimately the program may need to reload it so I would recommend saving it somewhere handy but out of the way, like Documents or even a folder in Documents.

Now, find the file you just saved and open it in notepad.  Find the section labeled “section:links”.  This is the meat of how the program knows where to transition.  It should look something like this:

section: links
pi:
down = Squall
Ixion:
right = Squall
Squall:
up = pi
left = Ixion
end

Notice the directions, up, down, left, right, these are the edges where transitions occur.  You can alter these to make them more precise by adding (x1,x2) to each entry, where x1 is the starting percentage across the screen and x2 is the ending percentage.

synergy_monitors

If you have some complicated positioning, you can futz out some math on the percentages by using the number of pixels /the number of pixels total, but if you have a fairly simple set up like mine, it’s not hard to generalize these percentages.  In my case, this becomes:

section: links
pi:
down(0,100) = Squall(33,66)
left(0,100) = Ixion(0,100)
Ixion:
down(0,100) = Squall(0,33)
right(0,100) = pi(0,100)
Squall:
up(0,33) = Ixion(0,100)
up(33,66) = pi(0,100)
end

Note, that (0,33) is the “first third” across the top of the total width (3 monitors).  The other transition is (33,66) or the second third.  If I had a third monitor on top, it would end up being (66,100), however since I don’t the mouse stays locked within the monitor on the right instead of transitioning anywhere.

With my original generic set up, any upward movement always went to “pi” and going off the left hand edge went to “Ixion”.  In the new set up, everything behaves as expected in a seamless up, down, and across fashion.

Oh, and it works on a Raspberry Pi!

Tools I Use: Netscan and Fing

I wanted to do some occasional posts on some tools I use for various technical tasks.  Partially just to suggest some useful stuff, partially so I have some posts to reference anytime I reference said stuff.

I wanted to start off with Netscan and Fing, which serve the same basic purpose on two different platforms.  Both of these tools will scan the local IP range and return a list of every device connected to the network.  Netscan is what I use on windows, Fing is what I use on Android.

I use these tools very frequently, several times a week on average.  So what use is scanning the local network anyway?  I have two main uses, though both come down to Device Discovery.

Firstly, basic device discovery.  I’ve hooked something new to the network and I need to access it.  A lot of what I connect is headless with no easy way of discovering the IP aside from a scan.  An Arduino, a Raspberry Pi, a networked Webcam, all of these things need to be found once connected.  The scan is also useful for getting the MAC address of devices on the network.  The IP is dynamic on a network by network basis, a MAC address is a unique identifier.  Knowing the MAC address is useful for building firewall rules and setting up static IPs assigned by the router for devices like phones or laptops where assigning IPs on the device can get hairy.

The other reason for doing a network based scan is intrusion detection.  Generally speaking, I don’t expect to see hackers or anything on my home network.  This is more for checking things like “if my kids’ devices are connected” or occasionally if one of my kids has a new device borrowed or whatever that I am not aware of on the network.

Ultimately I want to set up a little network monitoring system on a server to do these sorts of checks in real time but both of these tools have served me well for years as doing the job quickly and simply.

Both are also useful for poking around foreign networks.  You can see what machines are on an open WiFi hotspot and see if they have any open shared files.  Though some open hotspots are smart enough to block such scans.