About

This is where I put all the things I've created which I hope may somehow be useful to others.


Statement

I believe in modular, purpose-built software. The more freely a program or library can be adapted and joined to other software the better. This of course begs the question of interoperability, documentation and cooperation amongst developers, and is why I am a sharp proponent of free software. I cannot stress how important it is, not simply just for myself (in that regard I find it to be an unparalleled educational tool), but rather for humanity as a whole. It is the actualization of creating software without constraints of intellectual ownership/micromanagement.

I have a strong interest in distributed software systems, especially favoring self-healing networks and distributed data structures and associated techniques. Beyond that I prefer to create purpose-built, practical use applications in a variety of languages. Practical in that their sole use isn't to pad a resume, but rather be of some use to others now and in the future beyond direct use even, either for design ideas or coding practices. Being able to riddle off a list of intangibles for the sole purpose of creating a list reeks of convenience, if nothing else. Above all else, I would hope what I have created can be of some use to people, even if only pedagogical.

In retrospect, I have since come to understand that I am a very design-driven developer, perhaps even over designing at times. A vast majority of my effort is prepaid out beforehand designing multiple approaches and ideas. Generally this pays off since perfect information about the task at hand rarely exists (so much for SCRUM), and I'd rather fall back on a secondary design than have to re-design again on the fly. Over-designing also helps the implementation in terms of knowing what you'll expect out of certain parts of the program. Despite modern languages offering an over-abundance of higher-order constructs, I honestly don't believe in their liberal use, ie. Php's magic methods. Most of the highly extrapolated capabilities of modern languages are more reliably implemented by means of lower level controls. Illustratively, one could implement an alternative, and more highly-tailored form of reflection in any language that doesn't support it by means of status accessor methods. Judgment calls will inescapably need to be made about any design decision and in some cases these constructs can be indispensable, however a rush to be highly reflexive/dynamic isn't always the best approach, as readability can suffer.



XPS
Aug 10, 2025

For a while now I've really loved my Dell XPS 9305. It was the first machine that really worked with Linux out of the box, for me. Nothing was disfunctional. Not a single device. It ushered in my "Year Of The Linux Desktop" (2021), and I found it so nice to work with I bought it from my former employer when they went under. Everthing was great, well except for theese pesky forced reboots (crashes), which happened to occur always when I was away from the machine so as to limit my ability to gain any hands-on insight into the true cause. At least they were infrequent, every few months. Still it was very unsettling, as without any warning whatsoever the machine would die. The system log (journalctl) was completely blank as well, as if the machine's power vanished, though it was on battery.

I ignored it, however I was lucky it would only rear up once or twice a year, and having come from a long history of trying to use Desktop Linux I was more than willing to take an occasional hiccup, even one of this severity, if it meant computing freedom finally.

I notice something odd during boot though, a slurry of ACPI errors which upon surface investigation sounded (from prominent discussions) as if it was due to lacking ACPI support of some kind in Ubuntu itself. Due to this assumption and having zero time to push further I lived with it.
But again it would result in stuff like this:


Aug 09 21:11:11 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:11 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [DBTP]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [WRST]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [DRST]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V0PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V1PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V2PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [WRST]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V0PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V1PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V2PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [V3PR]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [TBT0]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [TBT1]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [D3C]
Aug 09 21:11:11 MySystem kernel: ACPI: PM: Power Resource [PIN]
Aug 09 21:11:11 MySystem kernel: ACPI: PCI Root Bridge [PC00] (domain 0000 [bus 00-e0])
Aug 09 21:11:11 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:11 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:11 MySystem kernel: ACPI: EC: interrupt unblocked
Aug 09 21:11:11 MySystem kernel: ACPI: EC: event unblocked
Aug 09 21:11:11 MySystem kernel: ACPI: EC: EC_CMD/EC_SC=0x934, EC_DATA=0x930
Aug 09 21:11:11 MySystem kernel: ACPI: EC: GPE=0x6e
Aug 09 21:11:11 MySystem kernel: ACPI: \_SB_.PC00.LPCB.ECDV: Boot DSDT EC initialization complete
Aug 09 21:11:11 MySystem kernel: ACPI: \_SB_.PC00.LPCB.ECDV: EC: Used to handle transactions and events
Aug 09 21:11:11 MySystem kernel: ACPI: bus type USB registered
Aug 09 21:11:11 MySystem kernel: PCI: Using ACPI for IRQ routing
Aug 09 21:11:11 MySystem kernel: pnp: PnP ACPI init
Aug 09 21:11:11 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:11 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:11 MySystem kernel: pnp: PnP ACPI: found 9 devices
Aug 09 21:11:11 MySystem kernel: ACPI: \_SB_.PR00: Found 3 idle states
Aug 09 21:11:11 MySystem kernel: ACPI: AC: AC Adapter [AC] (on-line)
Aug 09 21:11:11 MySystem kernel: ACPI: button: Lid Switch [LID0]
Aug 09 21:11:11 MySystem kernel: ACPI: button: Power Button [PBTN]
Aug 09 21:11:11 MySystem kernel: ACPI: button: Sleep Button [SBTN]
Aug 09 21:11:11 MySystem kernel: ACPI: battery: Slot [BAT0] (battery present)
Aug 09 21:11:11 MySystem kernel: ACPI: bus type thunderbolt registered
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PC00.LPCB.ECDV.TSKN._STA.VSP1], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TSKN._STA due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S1CC], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TMEM._CRT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S1HP], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TMEM._HOT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S1PV], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.TMEM._PSV due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S2CC], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN1._CRT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S2HP], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN1._HOT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S2PV], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN1._PSV due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S3CC], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN2._CRT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S3HP], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN2._HOT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S3PV], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN2._PSV due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S4CC], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN3._CRT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S4HP], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN3._HOT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S4PV], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN3._PSV due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S5CC], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN4._CRT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S5HP], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN4._HOT due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
Aug 09 21:11:12 MySystem kernel: ACPI BIOS Error (bug): Could not resolve symbol [\S5PV], AE_NOT_FOUND (20210730/psargs-332)
Aug 09 21:11:12 MySystem kernel: ACPI Error: Aborting method \_SB.PC00.LPCB.ECDV.SEN4._PSV due to previous error (AE_NOT_FOUND) (20210730/psparse-529)

One day, and on a whim, I decided to follow this up. Instead of searching for ACPI+Ubuntu errors, I went with the most obvious route, rather, "forced reboots on Dell XPS". The page exploded. Everyone and thier mother was suffering, Windows included, from the most trivial reboot/crashes which haven't been a problem since the earth was cooling 25+ years ago. After sifting through pages, over years and years of discussion, the result was that, for the most part, Dell couldn't write firmware any more. What was once a common and accepted academic assumption, that your system won't crash due to anything hardware/firmware related, suddenly didn't hold. Secondly, the expectation that the vendor (DELL) actually cared to address the issue which was affecting ALL downstream OSes was also not the case. Many had tried BIOS updates which, allegedly, were claimed to address the issue, one wich from what I learned was related to the board's ACPI and Wireless card's integration, or rather lack thereof. The Wifi chip would occasionally request to going into powersave mode, and the ACPI would say in layman's, "I have no idea what you're talking about, lets force-reboot!" after which the charger (if present) is no longer able to be detected until a cold boot! None of the updates, from DELL had any affect, from what others were saying, and I even tried to disable powersave on my wifi, which unfortunatley has not stopped it.

I'm sure it somehow could be worse, but the fact that it is 2025+ and the laptop has, for all intents and purposes, the functinal reliability of a system with Win98, is flabbergasting. Whats old is now new again. Ultimately Dell does not care and refuses to asses such a critical usability flaw in an otherwise very usable, non-obsolete, system.

https://www.dell.com/community/en/conversations/xps/xps-15-9500-plugged-in-but-will-not-recognize-it-is-charging/647f9496f4ccf8a8de6e4213

https://www.dell.com/community/en/conversations/xps/xps-15-9500-random-restart-no-charge/664396cf3a00f45897890270?page=5

Farewell soon my friend.