All the variations, on all the things
I realized the last two pictures I put on these posts were of people looking downward. Gonna try something else, but not sure what. Admittedly, I am using generative AI images for this, but not to prove I am cool or anything. It’s just interesting to see if I write a prompt, what it will give me. That’s just another thing in all the things.
I feel it is always good to start off with my brain twirling on something else, so let’s start with how overloaded IT language is. IoT is the internet of things. It is one of my least favorite current acronyms as the entire internet is a collection of “things”. So we are an IoT culture now. It’s everywhere, and permeates quite a bit of the planet. I’m not a luddite, but props to people who put their devices down and check out. I don’t do social media anymore, because frankly my life is more interesting.
I also realize there is quite a bit of privilege in my statements, but this is where I live and who I am, and I work in tech so this is where my brain goes. Apologies if that makes you uncomfortable, but I have also been without a home or a penny to my name, so understand that my experience is not to denigrate your experience. That’s not me. It took me quite a bit of hard work and support to find success.
Any hoosel-beans, all the variations on all the things. I think the best way to state this is by talking about the most I have ever had to use for testing. Remember, this is well before any type of reliable emulator as a service and one needed a physical device to test on. So, this is what myself and my teams have had to do:
Create a local running web server on our LAN, so that we could connect to each device to an IP address and or DNS address to run SSL. That meant anyone in the LAN could hit the servers.
Run Jenkins on a local repo server, at one time we tried one or many of these to distro builds out.
Create all the test scripts manually, and run through each scenario on multiple devices to simulate the real world. There’s a great Concrete Blonde Song: Days and Days that sums this up. If you don’t know them, you should.
It is even more fun, as at one time we had these workstations:
Windows: 95, 98, 98 Rev2, XP, NT, SE, ME, Vista, The one with the metro theme and then other specific editions related to countries of origin as laws are different outside of the US. Oh yeah, installs of workstations and servers too, forgot about that.
Mac: Motorola Chip, Intel Chip (This was before silicon) - we needed to have different flavors of the Mac Operating system as Compat mode was a real problem. Tigers, Lions and not bears. Boo.
Android - we needed multiple devices, all running the different OS versions, because layout systems would change.
IOS - ditto, you needed to purchase every one of every display size and then have multiple running different versions of IOS because even in an Xcode emulator, one would find things in the wild on the specific chipsets. Mind Boggling.
Misc - blackberry devices, Windows Phone, Nokia, and then I would swear there were others, but my brain cannot remember those anymore.
Oh yeah, Unity - that was another one. I’m sure I’ve missed something with Point-of-Sale systems (aptly name POS) and all the fun things with mirroring displays and the grand world of touch gestures.
Anything else I blocked out, because you know: feelings.
Then after that, it was all quirks within each browser. That’s just too much to put in one blog. This was well before can i use or mdn or stack. This was endlessly reading specs and then going: “Ok, that’s not true“ and then using every ounce of one’s understanding to fix the issue. I mean I used a table based layout for ever because it was the only one that I could put in all the browsers (and in 2024 still email, thanks outlook) without a massive amount of overtime. I had to serve up different versions of mobile and - fingers-crossed - hope that the headers were switching correctly, identifying correctly and/or not spoofed. (This was before developer mode in IE, which I also forgot about it’s nightmare fuel.) Maybe that’s why I needed therapy? Hmm.
And one has to remember, that is a significant investment in hardware, licensing and labor process. The endless nights doing this was brutal. Not savage, brutal. 18 hours was for sure the norm, 80+ hour weeks. And now people look at me oddly when I am like: “Hey, let’s deploy this tonight“. There have been many curious looks. I even offer a late start, which never happened for me. My experience has been deliver to survive. That’s my experience though, it should not have to be yours. That’s my goal as a manager, to avoid that as much as possible. And thankfully, DevOps is truly a thing, and I am really good at it.
Ok, we’re done. We, being me.
So, at the end of today’s diary, I have to give credit where credit is due for the meme I made, and one of my favorite folks on youtube is Dr. Angela Collier - if you do not know who they are, check it out! I’m a fan, and would love to get on “The D-Con Chamber“ with her crew, my crew and talk about how we all can save Star Trek from itself. (And, I love Star Trek).
Anyways, she has the best quote ever, that describes my career perfectly:
“Depending on which brain is in my brain at any one time, the answer to a question will change.“ - Angela Collier
That so utterly describes myself at this point, it is uncanny. The experiences that I have had I believe allow me to be a bit of the IT/web-browser whisperer anymore. Even with all the changes over the last few years in Shadow DOM, ECMA updates, SecOps, dat-da-dat-da-da the basics of The box Model are still there. Coordinate systems are still coordinate systems. TCP/IP and internet protocol has glacially changed, and yeah there are alternatives, but sortaaaaah. It’s like driverless cars, unless we all have one there are implementation problems.
I do have a bit of a conceit here, and it is super petty - when folks use “var“ over “const“ in JS/TS. For some reason my brain will not let that go. Maybe it’s because I have been using eslint for so long, that I just see it now. See, I put on my DevOps brain because because var and const are valid JS, but should be used differently to prevent code smells… Ok, I’ll stop. ;)
Did I say I was done? I really mean now.
Take time for yourself, and don’t code tired!
PS - Star Trek and all it’s things are not owned by me and my opinion is not the opinion of Paramount, CBS or any of it’s whatevers. I’ve worked with Paramount, but they do not sponsor me. I still have a great idea to keep the legacy of DS9 alive. Dom and Connor should call me. ;)