Where I've been, March edition
It has been a while since my last post, which was really only a post about the Steam Deck fixing a minor issue. I have not had a blog post in mind for a hot minute about a singular topic, so I've decided to do a collection of random thoughts and musings from the month of March.
The Tech world has been suffering a lot as of late, and layoffs are happening globally to almost every single tech company out there, I imagine. If it hasn't happened at your company yet, then you're probably in luck for the time being, or your business is ran by sane people who don't over-hire.
As someone affected by layoffs back in January, it sucks to see that my future prospects over time shrink as more skilled engineers are forced to job hunt and find new gigs for themselves. Everyone's in a panic, nobody is safe, and the CEOs continue writing blog posts online about how sad they are to lose the thousands of employees they never met.
It has left me often to reflect a lot about my own career, and how I wish I could achieve more with the little time I have in a day. Maybe that's an excuse, and maybe I could push myself to do more, but where I could possibly start is the hardest question of all - how does anyone start a functioning business?
I've been asking myself that a lot, and until I can find my own niche I can fill, I probably can't start a business of my own. My hopeful ideals would be to start a business I could run and operate myself, and then as it achieves more success, bring others on board with me to run it, those I trust and treat almost as my own family. And it could be remote, forever! Commuting sucks, nobody likes it! The only people who do like it are those who fly by private jet or helicopter; also known as: corporate elites.
Mayhaps in either the long term or short term, I can find my own niche and develop a product of my own and maintain it. I wouldn't mind it much, because putting my faith and future in businesses who don't give a crap about individual identity is not something I find enjoyable; it's depressing. You slave away for years to work at BigCo Inc., and the minute the interest rates change in the country, you're stripped away of your rights as a worker, and the company buys government bonds to make them more money.
This wacko world sucks and makes zero sense.
I have not been on any major recent programming developments as of late. Everything has slowed to a halt back in January when I was moving, and I have not yet struck back my groove for coding. I make some occasional tweaks here and there, and still publish some code related to PWAs, but it can be days before I make a meaningful contribution somewhere.
I have some projects in the concept area still, and some may even involve Racket, a language which I just ranted against a few posts ago about my disdain for it. It's hard to remove a language which I used for seven years from my brain, because for some aspects, it's really good. However, it's not a path I want to walk again. I am trying to convert some ideas into Haskell instead, which may come back to bite me in the butt at some point, don't know yet.
Zig has been a recent fascination of mine since it's portable to WebAssembly quite easily. I feel I have not written as much about Zig recently as I would have liked, and I spent a bit of time over on dev.to in the past, but I decided to tone down my exposure there and continue writing on my own platform here. Zig also comes with a ton of friction, since it takes on similar properties to that of C, and not of things like C++ or Rust which employ different programming paradigms much easier, like object-oriented programming or composure-over-inheritance. However, maybe that'll get better over time as I improve as a Zig writer, and as the Zig language matures.
Overall, I still have modifying this website in mind as my first thought, but figuring out which tooling to use for it is the hard part. None of the tools I use I'm currently pleased with, and developing new tools would take weeks to months of my own time. It's a hard problem.
And now onto the mandatory section where I talk about the Steam Deck. Recently I've been using it more as a TV living room console than anything. I have a USB-C high-powered 180W hub that can drive the Deck to use multiple displays, and give it a ton of charge as well. This was sort of a leftover from my last job, so I figured I'd see what I can do with it with the Deck.
I have another USB-C hub from Hewlett-Packard (HP), and it doesn't work at all with the Deck. The cable is flakey, and sometimes I can pick up another display source with
xrandr while in desktop mode. I figured maybe it was a specific and weird frequency issue, but it was not. The hub sucks. I will be returning it soon. In this rare instance, it's a Dell victory (I am not a Dell person I swear).
I have a number of Steam Controllers from the days when those still existed, and have been comfortably playing with a Steam Controller while using the Steam Deck to drive a TV display. It's very comfortable. 😀
However, now comes the bad part: I broke my Steam Deck in an odd way. I recently dropped it by being reckless, and it's trigger button immediately popped out upon falling. I put it back, but then after testing, realized the shoulder button next to it stopped working. Upon further inspection, this is actually a very common problem. Thankfully someone on Mastodon found me and shared with me his experiences here.
The actuator switch behind the shoulder was not securely fastened by anything, and if this breaks, you would need to solder in a switch yourself and hope the pads are still slightly intact, or send it back to Valve for a full board replacement. The repair cost is most likely very high, so DIY solutions are effectively cheaper to do. However, the technical skill required may be slightly above what most people are used to. This is a pretty unfortunate situation for anyone who finds themselves in this sticky spot.
I will be attempting to repair this myself with the help of some friends, but I'll post back when I have more details and photos myself of the overall process.
I haven't spoken about AI quite yet in-depth, but I thought it'd be fun to talk about it. AI has taken the media by storm as people find new ways to hustle and use AI to their financial advantage. Creative writers, recruiters, and all sorts of weird markets will now use AI tools like ChatGPT to do a heavy load of their writing, I imagine. Heck, maybe I wrote this with ChatGPT. How would you know?
I am a big reader of all things by Peter Norvig, and am a proud owner of his shining AI textbook.
For me to say I have read this book in full - I cannot. However, from the about 30-40% I have, natural language models are a subject covered by this book, and it heavily employs the use of statistics to analyze language. ChatGPT is correct in this sense, but to call it "true AI" is wrong, and the media understanding of the potential what ChatGPT can do is also probably not very correct.
ChatGPT is what's known as a "language model", and language models aren't new; see AI Dungeons for something similar using GPT-3. GPT-3 is a statistical math engine using a special form of calculus to read inputs and produce a "human-like" output. The language can associate grammar and terms with some mathematical estimation, but understanding of what the words are and context is not something these engines can do.
Everyone fears for The Singularity (not this Singularity, or this one), and most are probably likely to believe that ChatGPT inspires a revolution of the human working world. However, I believe that to be false; ChatGPT may produce output that can "revolutionize the workplace" and "make humans obsolete", but the same can be said for companies whose output ChatGPT can mirror.
All of these paths are slightly true; if ChatGPT can match the output of humans, then yes, you may be in danger. But it's either an "everyone is in danger", or "nobody is in danger" sort of process. ChatGPT is a service made by OpenAI, what equates to basically a software-as-a-service company now and not a non-profit AI research institute. You would have to pay them money and be subject to all their service models. In turn, OpenAI will have competition over time, reducing the market base for "people buying ChatGPT subscriptions".
With respect to their other service, DALL-E, one can use DALL-E and instantly become a freelance artist and work your way up to the biggest contracts in the world. However, AI art isn't perfect, and one day you'd have to prove yourself as a real artist, and not an "AI Artist Prompter" person or whatever. AI art is already subject to controversy, and most websites are now making it against their terms of service to even upload AI art.
I am someone who enjoys ChatGPT and DALL-E for casual use, and probably would never seriously consider using it for professional means, as it devalues the use of other humans on the planet. I am currently in the process of trying to turn Google's Bard into a Communist for fun.
I've been playing Yu-Gi-Oh! for a little over a year and a half now, and it has helped my overall happiness throughout the pandemic. I play a mix of paper format casually with friends, Duel Links, and Master Duel. At the start of March, I purchased my first booster box to split with friends called Photon Hypernova.
We wanted to get for my friend a copy of the new card called Galakuriboh to enhance one of my friend's decks, and we were lucky enough to get him! Very exciting for our first time. I was also blessed to get two copies of two new cards belonging to the "Kashtira" family called Kashtira Arise-Heart and Kastiratheosis, which were among the most valuable cards in the set so far.
I spent the following weekend listing them on eBay trying to sell them as quickly as possible before their values declined too hard. I shipped them out the next week, and it was a fun time all along opening up two valuable cards with my friends.
Phantom Knights are a monster series themed around ghostly warriors possessing weaponry from when they were still alive. Each of them are equipped with abilities focused around either special summoning other Phantom Knights, or banising themselves from the graveyard to activate other abilities, like resurrection from the grave.
Their specialty monster, Dark Rebellion Xyz Dragon, stands out and is one of my favorite monsters of all time, both in artwork and in utility. Dark Rebellion can evolve into Arc Rebellion and Dark Requiem, as well as so much more too via the use of what's called Rank-Up-Magic spell cards. Dark Rebellion on his own is strong, but Dark Requiem and Arc Rebellion are game enders in their own right.
With Rusty Bardiche, the newest Link support for them, Phantom Knights are very strong in their own right, and are plenty cheap. If you want to play Yu-Gi-Oh! in paper format, you can very easily play Phantom Knights for cheap, as this deck costs a little under $30 USD to construct (will cost more as you buy more boss monsters to add into the Extra Deck).
One day I'll probably try playing Yu-Gi-Oh! in person for tournaments maybe, but my Phantom Knights on their own are not powerful for modern day Yu-Gi-Oh!, and will require some tweaks to make it usable. It might require me converting it to something called the Adventure engine to make Adventure-PK.
A while back I took down my Alienware Nextcloud server for some purposes. It was to convert the Nextcloud Docker image from base Nextcloud, to a Nextcloud
fpm version which would hopefully improve performance. It required moving the instance to an Nginx proxy, which was a pain in the ass to change all the data over for and fix. I took it down until I could finally do it all.
Probably over the next month I'll try to re-do all of it, which will end up with me re-writing a past blog post and making it modern (again). I'll still use the Alienware box for it, and I might even consider trying out something like FreeBSD as the server OS.
I have had my Google Pixel 3a XL for about 4 years now, first getting it back in 2019. In May 2022, security support for 3a XL was dropped by Google, so I wrote about moving to LineageOS, which I have been happily on for the near-last year or so.
While the Pixel 3a XL has felt fine for the most part, the only real place where the 3a XL falls flat, is it's performance. It's to be expected for a phone that's considered the "budget" Google phone. I am not someone who spends a lot of money on frivalous things, so phones never felt important to move between. The way I see it, for the most part, if it still works, why move?
Recently, it's felt sluggish. Don't know why. It might be the web browser experience entirely. Browsing the web simply isn't fast anymore, and has always felt like a struggle to get it seamless and smooth on old phones. I use Nightly-based Firefox, I use uBlock Origin to block ads on it, and generally it feels fine, until it doesn't.
More and more as I try to rationalize my phone, I realize that no matter what, I'm still paying for one thing: electricity. My phone is less efficient than modern phones, which leads to my phone expending more Watts than other phones to achieve similar tasks. I am charging my phone to full, only for it to be less efficient than newer models, so I may be expending more electricity in the long run.
It might matter, it might not. I could be overthinking it, but my phone is aging fast, and not improving necessarily. It might be time to move onto the next phone, which may or may not be a Google Pixel 6 series phone. I may try to purchase a refurbished phone from eBay to see if it can work as a decent replacement for me. The Pixel 6 is noted to have almost double the Geekbench performance of a Pixel 3a XL, so I think it's a worthy decision to make. Hopefully the screen quality is decent if it's coming from eBay.
I see my last post from February, meaning it's been over 40 days since I last posted! I apologize, as it's been busy as of late prepping for new things and unpacking from the move still.
Within the next month, I would like to give the website a new face. Something a bit more professional, I suppose. Don't know how that looks yet. It'll be a lot of work, but hopefully it motivates me to start putting in more man-hours into coding up new solutions.
Until next time!