So just after I remark about how cool the weather has been the temperature goes up over 110F for the entire next week.
It's okay though, we're almost to August and the Equinox happens near the end of September; That's when the days are still blazing but the nights cool down quite a bit. I don't really mind the heat so much myself but it really does a lot of damage to the paint & plastics on the cars.
Of course I spent more time on Project Virgil yesterday & tonight. I also rewrote a couple sections of Project Sentinel to improve thread stability - less crashy when switching between streams & killing a child doesn't murder the parent too. That's the thing about writing every day is that it gets boooring because almost every day is the same. At least I can report the construction noise is reduced the last few work days & the offensive paint odors are gone as well. I hope it continues this way but I know it can't last. I'm still stuck in the same general vicinity of a troll who has to talk AT FULL VOLUME ANY TIME HE SPEAKS. I swear he must have hearing problems. Or everyone in his family does.
My manager actually works hundreds of miles from me on a daily basis & is only ever in town a few times a year. Tomorrow is a team lunch & meeting event that I'm not thrilled about attending but will force myself to be there anyway for the sake of staying informed. They always provide a very nice lunch and it's good to get everyone in the same room for an hour or so at least a few times a year just so we can remember what everyone looks like.
It's almost time to get ready for the morning so I'll leave it there.
Here's my favorite song for the last year or so. Enjoy
Today I had the salmon Caesar salad for lunch & Chris had his usual. Jason was our server & he's a nice kid. Lots of familiar faces again & the food was superb as usual. I did the grocery shopping on Thursday this week so Chris could drive the Subaru to work on Friday because it's been pretty warm here & his little MX-5 hasn't got great A/C performance in the summer. Not only because it's a convertible but because it's 27 years old & has the OE compressor. It's a bit long-in-the-tooth as they say. Thankfully it's been a little bit cooler here this summer than last; over-all it's been rather mild with only a few days so far over 110 dungarees Frankenstein as AVE says. With any luck we're ~3 weeks to Lexus delivery & he can drive the Subaru every day.
It's just after 11PM here and I can hear the hoonigans out there on the 101 racing up & down the freeway. The 101 is over a quarter mile from my house, that's how loud those engines are screaming. To my not-trained-ear it sounded like a Ford Mustang was racing a sport bike. Having owned & ridden a BMW F800GT motorcycle, my money is on the bike. I enjoy a sporting drive as much as the next person but having spent time in an actual race car on an actual race track I understand the limits of the average driver & that it's simply not safe for anyone to be hooning around too much on the public roadways. The kids on those bikes down here though...holy moly do they take chances.
I'm juggling back & forth today between Project Virgil & Project Sentinel and to be perfectly honest with you my eyes are getting blurry. I've spent a lifetime banging out code but the last couple of months have been brutal. Not only do I have personal projects left & right but there's so much scripting & testing to be done at the office that I'm going to need a vacation in short order. Maybe after the new car gets here we can spend a weekend in Flagstaff or take a drive to California to tour a museum. I'd love to see if I could get a tour of Jay Leno's Garage out in Burbank.
A good friend is on a business trip out East & drove up to Maine for a weekend excursion. It's a beautiful part of the country. Here's a pic he sent:
It's getting late so I'm going to press this page, make some last minute updates to Virgil & Sentinel & then I'm calling it a night. Sweet dreams.
I've officially shut down sandman and stopped dev work on rambler; nash is the main dev workstation now & this update will come from there. Many updates for Project Virgil today, dozens of changes & three solid commits. I still haven't found the right vim color theme for the terminal but I'm getting by, I'm not sure I want to sully this box with vscode. I think I'll keep rambler around as a little chatbox for IRC and just remote desktop into both of them at the same time. Keys are exchanged & there's network storage so it's simple enough to move things around.
Today was a pretty productive day. I put together the framework for a new discovery tool that I need to develop in order to facilitate absorption of some external equipment. I have to pull in their design & replicate it as best I'm able while making it conform to our legal & contractual obligations. I'm going to call it, "The Probulator". I got a couple of training things out of the way, and a couple of issues updated & logged. I started work early so I left a bit early & got my grocery shopping done today. Now I don't have to rush around tomorrow to get everything done, I can go a a slower pace.
I need to try to stay on a specific schedule because it helps me keep focus. When my schedule gets off, I seem to get overwhelmed easier & feel like I'm always late for something. I've made it a point today to remain on task and it feels nice.
A moment of reflection occurred today sparked by a fruit.
There are three sort of people when it comes to things like a peach. The type who will pick up the peach, inspect it for worms, then begin to eat it without a concern. Another type will inspect the peach & then wash it off to make sure that any pesticides, dirt, or other cooties linger on the surface of their tasty snack before dining. The remaining sort (the category I fall into), is to inspect it, clean it, then slice & prepare it in the most efficient manner to enjoy. I'm not sure what any of that means or if it's even remotely accurate. I don't mind doing a little extra work to make an experience more enjoyable.
Good progress on Project Virgil today. It's really nice to see a concept of so many years come to life a little at a time. Tomorrow is my Friday & I might just do a grocery run after work instead of doing it on Friday. That'll give me more time Friday to work on it & see how much progress I can make.
Someone scheduled a meeting at 8AM so I figured I'd go to bed early & make an update while I listen. I doubt they'll need me for this anyway just yet.
Yesterday at work I got some good things done, two projects effectively signed off, only final paperwork to complete. Of course it's just July so we still have three months of sprints before things calm down a bit, but right about now is the start of budgeting for next year so we're all going to have to get spun up and ready for that too. At least it's a predictable pattern of abuse. :)
Last night I wrestled entirely too long with XRDP sessions to my new Linux system, pretty embarrassing to be honest. Of course it was DNS. It's always DNS. If certain applications can't reverse look up their hostname they simply refuse to do the needful; sort that out and viola, the curtains are raised and the show may begin.
I took a minor diversion from Project Virgil to set up the new workstation. I probably should have started up again today but then did another side quest to port Swann-Sentinel to C++ and it did not go as expected. I spent too much time in QT Widget hell & may trash the concept entirely because it just feels too fat. My original goal was to go with CSS/HTML/JavaScript but the persistent threading issues I have with Python made me try C++ on a lark. I have all day to reconsider that.
Oh wait, they do have a question. Yes, in fact, Oracle/Alma/Rocky & RHEL Linux are all 100% binary compatible. I will be able to port their applications with aplomb.
While I love the Subaru because it's sofa king fun to drive
I must confess to longing for the more comfortable ride and seating postion of the Lexus.
At least this meeting is finished. Let's hope today is glorious!
I spent the entire day yesterday working on projects and setting up the development environment on the little Beelink system only to tear it down and start over with a different release of the OS today. I was going to make a note about it but I spent so much time on it that it was time to just go to bed & do more today after work. I'm going to go from Oracle Linux 8.10 up to Alma Linux 9.6 and see if I like it. The development environment should be about the same, but it'll give me a fresh perspective on another distro.
Today the office was fairly quiet in the morning & I were able to get quite a bit of things finished; there were some problems on the release I put together last week but they got sorted out today. Of course as the old book goes, "If you give a mouse a cookie...it's going to want a glass of milk.". As expected they were full of further requests today (including several of which I had already informed them I would not be able to resolve), and I had to gently show them the door. I was asked to build a framework, a release candidate, and deliver a baseline production unit #1. Baseline means Baseline. The only specs I had were a that they wanted a basic dev stack for python & C/C++. They got exactly what they asked for and pretty much nothing else. I warned them it was going to be like this if they weren't specific but they didn't listen.
In the mid afternoon the contruction workers started painting in one of the new areas and the smell overwhelmed me. I felt nauseated & started to develop a headache so I moved to the freezing office downstairs which is so cramped that it must be similar to what it's like working in a submarine. Only one person can walk down any aisle at a time & there's barely enough room to turn around if you go the wrong way. It's right next to the server room & it's cold as heck in there; to the point I have a battery operated/electric jacket.
Much work has been done on Project Virgil but production grade code is a long way off. I just have to make some progress every day. Now I'm going to listen to the rest of the Carmudgeon Show while I get things ready for work tomorrow. Let's hope it's a glorious day.
I've been using a decently powerful desktop computer for my main gaming box & video streaming rig, but for much of my coding & development projects at home I've been using a little Besstar 4 core Ryzen 7 system with 16G of RAM via RDP session for a couple of years now. It's starting to struggle a bit with the compile and loading of code so I ordered a replacement system that should arrive tomorrow. Upgrading to a Beelink SER8 Ryzen 7 with 12 cores & 32GB ram. I should be able to PXE/network install this system with my secure baseline and be back to coding projects in a few hours.
We had our usual lunch at the regular place today. We saw Leo of course at the door & Olivia and Al on the way to our tables, it seems there's a lot of familiar faces around these days which is really nice. I'm glad the place does good business on a Saturday & will hopefully stay open for many years to come. They make their croissants in-house fresh every day so we bought some to bring home after lunch as a bit of a desert & they were absolutely divine.
When I got back I had fun watching some racing & working on another project. It was in the middle of running an interation of that project when I decided I need a little more power. I'm not sure what time the little box is coming tomorrow but I'm looking forward to it.
Even though I slept late today which has become pretty unusual for me, tomorrow I'll need to get up & get some laundry started for the week; I always tend to put if off to the last minute & then I have to stay up late to fold & hang everything up. I want to make a grocery store run to get more brioche hamburger buns, I don't make hamburgers every day or anything but Chris likes to use them just for sandwhiches too so we use a lot.
Microsoft has been trying to force me to stop using old-school Internet Explorer mode for years. I've got an aging DVR security system here at the house which not only records from several cameras & stores the video locally, it also stores the video to an offsite location.
The primary interface to this DVR system is through either a web browser interface or a "fat client" that gets installed on the desktop. The desktop client they built is terrible. It's only capable of viewing the sub-stream & can't show more than four cameras at any given time. The web application is not compatible with newer browsers such as Edge, Chrome, Firefox, or Brave - It only really works well with old school I.E.
Since M$ has been trying to stake that vampire for a long time, they're getting more and more aggressive about preventing me from using IE mode. Refusing to save passwords, refusing to stay connected/logged in for more than 24 hours, swapping back to Edge mode regularly (and breaking functionality of the plugin in the process), and generally just pissing me off.
Last night I'd had enough & wrote a completely new bespoke DVR viewing application for this infernal machine from scratch. It has all of the features I want and need with zero of the bloat and restrictions of "you can only view four cameras at a time" malarkey.
With this one application, I can see all of the cameras in one window & open each individual camera in a full screen window if I want. It launches each stream in its own thread so it runs pretty quickly & doesn't consume a bunch of resources. It's lightweight and I can have it store the credentials in an encrypted file indefinitely.
I started taking melatonin an hour or so before going to bed a few months ago and I'm surprised to say that I believe it helps me sleep better. For whatever reason I forgot to take some last night & woke up feeling less than well rested. My day was not ruined however, I was still fully awake & functioning early this AM in time for my meetings & deadlines. I'm happy to say that Unit #1 sporting a fresh RHEL 9.6 install has been delivered & initial validation has started. There are a couple of issues that were revealed as soon as the users attempted to log in, and thankfully everything worked because it was able to utilize a fallback protocol which had been included in case of just such an event.
After having made some code modifications to Buckley which included moving from static functions to classes, re-arranging the interface layout, and adding a bespoke icon to the main server config panel, I pushed a new version of buckley.py with it's icon to github & will be making this entry using the new code. So far it's working better than I'd expected! I think tomorrow I'll add room on the default template for an Author avatar and start planning the swappable theme code. I'd actually rather switch out to working on the main Loux.org site or start working on a few other coding projects I've got rolling around in the old noggin, this app is already doing the bulk of what I wanted.
Things had slowed down at the office at 3pm and since I had some extra hours from the Sunday patch window I decided to take off around then. There seemed to be a large police presence on the 101S today as I was driving home, there were DPS or State Patrol every few miles, it probably had something to do with an accident but I didn't see any evidence of it from where I got on the freeway.
Well you know, just because it's approved for release doesn't mean it's actually going to get released. Yet. Of course there were a few hitches in the giddyap so unit 1 won't roll until tomorrow (Thriday), but even then I'm assuming the user won't be able to access it yet. Gremlins. There's always gremlins with the first one. At least I'll have a good start on it in the morning & I'll have coffee while I'm doing it.
I hate python but here I am doing things in python. I suck at it. At least it's doable so long as I have access to some documentation & can find decent examples. I feel as if I have to do everything over two or three times now and then because I stumble on one incompatibility or nuance after another. At any rate the blog forge has gotten a lot of handy features & interface modifications. I'm surprised I hadn't lost any data before I added the database backup feature & copied it off to network storage.
For some reason today it seemed as if my internal clock were slow by 30 minutes & I ended up being late for things by about that long at several points throughout the day. I'll blame it on the clouds & the brief spots of rain we've had. Of course it's monsoon & we're getting haboobs & rain. It's the perfect time for my new car to arrive, in time for the crappiest weather of the year. At least I'll have it before fall, right? We're supposed to get more clouds this weekend so it may be a good time to fly the DJI & get some nice long distance aerial stills.
Anyway I wasn't really hungry so I mostly skipped dinner, I'll probably be wanting breakfast in the morning. At least I stopped at the grocery on the way home and picked up lunches & things for the next week, so tomorrow I can just get up & get breakfast on the way to work if I need to. It's pretty rare.
One of the under appreciated benefits of living in the Northern Sonoran desert is the lack of humidity. People say, "It's a dry heat." and that doesn't put any perspective to it. I like that I can get out of the shower, towel my hair dry & then simply sit at my desk for only about 8 minutes before it's dry enough to do something with. Which, in this case is sleep, but the point stands.
There were some odd patching issues on the GPS systems which reported failure but apparently worked anyway. I think it's related to an old kernel installed on the systems so I'll have to test it tomorrow as I complete the remainder of the updates. Perhaps just retaining the two most recent kernels is enough anyway. I parried back & forth with a Luks encryption issue on one of the bits of specialized test gear but was eventually able to resolve it by just killing the key slot & adding the key back. It took a large portion of the day & didn't leave much time for dallying. I was able to get the checklist ready for the non-FIPS compliant release in addition to the FIPS compliant version which went out yesterday, after I left for the day I saw that the security manager had reviewed everything & issued an approval. Tomorrow we'll be able to deploy the first production unit, which me luck.
A frustration for the day was that I had put together an Ansible playbook to update some things in an environment for a task I was asked to handle. A task which, if I'm being honest, should never have fallen to me to do in the first place. This is a relatively old environment for the enclave & this is one of those sorts of teething pains which ought to have been already worked out & coded around. Nonetheless I wrote a functional (if less than elegant), role to handle this minor task. The lead admin looked at it (after having left the issue to fester all these long months), decided it wasn't up to his standards and, rewrote it almost entirely. While I don't bristle at having my work replaced with what is a slightly more complete Play, it's that he could have done this so long ago, disregards the time I've put into this work, & invests the time to re-write & replace it with a different method that effectively accomplishes the same task.
After dinner I spent sime time watching videos while updating the blog forge with some bug fixes & minor adjustments. I need to stop at the grocery tomorrow for a few things after work. Let this serve as my reminder.
Today I committed Buckley to github so I have an offsite repository for the code & can do some actual version control. I added a markdown preview panel, Re-sizeable entry management panel, RSS feeds, and shortcodes for embedding complex elements sans raw HTML. My next major goal for Buckley is importable, selectable & switchable themes, but since I'm a bit of a one-trick-pony & I like the present layout, I'm in no rush for this.
While there's been quite a bit of construction noise at the office lately because of facility expansion, yesterday was a fairly quiet and peaceful day for which I was quite grateful. The abrupt noises & incessant beeping of the heavy equipment really disturbs my chi and I have to wear big can style headphones with some music playing in order to drown it out. It's not a very comfortable environment for someone of my nature to be forced to endure, nevertheless I forge on. Looking forward to the day this work is completed & I can have my old office back.
Life at the office goes on as it long has. I've put together a new product at the request of a certain business unit, in record time I might add, request to release-candidate in a matter of days - which I don't need to remind my developer friends is a feat of some magnitude. The unfortunate circumstance for them is that any product I build and aim to release for general availability must first pass through the gauntlet of a security review. There are many people of a certain business unit quite anxiously awaiting this product & they're verily chomping at the bit for it, daily emails asking for status updates for which I have none.
The coffee is good, so at least we have our small pleasures in life.
The Sunday morning patch window went surprisingly well. B-rice was supposed to be there around 10AM but I ended up finishing my work & leaving before he made it in. All of the systems I scheduled to start at 06:00 were finished & I ran the jobs to update by host collection. There were a number of boxes that got powered off somehow & I couldn't get physical access to power them back up, but otherwise everything went without issues. I got to watch a bit of the MX-5 cup race, but it got red-flagged in the last few minutes due to rain & a pretty rough crash.
So after doing some laundry & making lunch I got back to work on the site & on Buckley. I decided to get rid of the starfield animation & go with a shadowbox type design. I'm still not 100% happy with the cube so I'll keep working on it. I'll add the ability to navigate with links in that new left frame that isn't doing anything presently. I grabbed a clip from one of our drone videos to use as the header image for the main page & it's made me seriously consider adding an image & video gallery back. It's probably easier & cheaper to use someone else's resources however, so perhaps I'll just put links to YT instead.
Buckley got some enhancements today also. I've added tags & a file upload section & am presently working on adding a site header image for the static blog page. I keep toying with the idea of making swappable page templates, utilizing what's already out there & available for things like Jekyll & Octopress. The thing about Buckley is that it's really intended for people like myself - one-horse outfits not really intending to reach a large audience - just wanting to maintain ownership & control of their own content. I'll probably never add a comment section because who needs the trouble of moderating it? Everybody seems to offload that workload to Disqus or something of the sort anyway so I don't see the need. If you anybody wants to comment you can send me an old fashioned email.
Anyway it's late & I've got work in the morning. I'll leave you with this video of Mike Doughty doing 'Down on the river by the sugar plant'
As you can see the link embed works. I made quite a few modifications to both Buckley & to the site in general today. It saddens me a bit to see how neglected it had been for so long. I know at some point I just stopped caring about it as I was a bit burned out & just trying to take care of things that were more important.
You know, I did spend a lot of time playing video games too so there's that. :) Anyway, the blog forge interface which I'm not sure I'll ever publish has been improved significantly & I've got more real-estate on the desktop to work with. I've implemented wrap-on-word so text in the Content markdown panel doesn't place half a word on one line & half on the next. Baby Steps. We now have an archival function so the pressed page should only contain a month of posts at a time & then prior months will get pushed to the archives section.
I decided I'd resurrect the old index page that I've been using probably since 2011, it was originally made with iWeb for Mac & I've never tired of the layout & design. Much like my Baggallini "everything bag" that I've carried since about 2010, when I find something that works, I tend to stick with it. I did take the time to update the links to music at the bottom & a few other things. I sold my motorcycle a last year so & haven't ridden since then so I took the references off the page. Unfortunate side-effect of getting old is that my hips & knees just can't take sitting in that position for very long anymore. I'm far more comfortable in an automobile even though riding a motorcycle is one of the most sublime pleasures of life which simply must be experienced to be understood.
Tomorrow is Sunday but I'll be up and at work at 09:30 for this month's patch window. A former co-worker Andrew T. had put quite a bit of work into making a nice Ansible role to handle the patching, but it tends to run for far longer than I'm comfortable with. Unfortunately the way we have to bring client side systems down before server side systems & wait for the server side to start up again before doing the client side has the side-effect of preventing a Free Play strategy where the jobs execute in parallel. When all four-hundred machines end up getting done in a serial fashion, any single job running long will extend the over-all window. I'm not really sure if Ansible is the best way to get this job done & I may end up resorting to scheduled remote execution tasks. As it is, I can run the jobs myself in under three hours & I'd rather just do it myself than come in on Monday & find the job still running.
Anyway that's it for today. Hopefully tomorrow I can spend more time on my Tempest work-alike browser game. :)
Didn't really sleep that well because I'd taken a nap earlier in the day on Friday. Couple cups of coffee and I was back to working on Buckley.
It's Saturday morning so we did our usual lunch at our favorite restaurant. We've been having lunch at the same place every Saturday or Sunday for about fifteen years. Best wait staff at any restaurant for the price point and the food is always excellent.
After lunch I started doing more refinements on this application I'm using to publish the page. I also decided I was finally going to renew the SSL cert for the site so it'll stop looking so janky. I haven't had a lot of time to play with things like this for myself the last few years but, I've finally gotten more of a handle on the work environment. That's given me more time for me & less time dedicated to the job.
I've been testing here at the home lab & it looked good enough to go so I decided I'd go ahead & set up the key exchange to the loux.org site & push the first page. Viola.
Now I'm going to try embedding a link to a video to see if it displays properly here.
Hopefully that's done it without destroying the entire thing. Let's give it a go shall we?
I feel like today was relatively productive. I got the grocery shopping done, I got the house nice & tidy with the floors all mopped & clean.
Dinner was very good, I made some hamburgers better than McDonald's can do & Christopher was quite happy with them. We watched an episode of the A-Team from 1983 & had a good laugh making fun of all the unrealistic things they did.
After dinner I got to work on Buckley, this application I'm using to create blog entries. I got sick of all the hassles with Word Press & Xoomla & Concrete & Django. Holy moly all that stuff is complicated.
I just wanted a simple client-side application I could start up & use to make some notes on a page. I don't need a server-side database just waiting to get hacked & exploted, so I decided all the work should get done here on my local system, saved in a simple sqlite database here at home. When I'm ready to publish, Buckley merges the new content into my existing blog scroll and publishes it to the site. No, it's not fancy. There's just one color scheme and one layout. (for now anyway)
It still needs work, and while I can embed links easy enough like this music video:
I haven't added the ability to preview the link here on the page. (yet). There are lots of other tweaks I can think of, including perhaps the ability to change the theme or color scheme easily, but for now this works quite well.
At any rate it's late here & time to get some rest. It feels nice to have a productive day.