AROLTD Software Genesis

Efficient Software for a
New Age of Inefficient Software


Home | About | Blog | Projects | Reference | Misc
dogw

Hello! Welcome to DEV dot AROLTD dot COM, the personal website of Alec Obradovich, computer programmer. I've been writing software for much long than I'd like to admit. Many things have changed since I first started as a young boy after the turn of the millenium and for quite some time I haven't really felt a need or purpose in running a personal website.

However, as time marches on it's becoming very apparent to me that the great masses of new programmers out there are quick to forget the old adages and practices of those that came before them. It's very common to think in the domain of digital technology that all new change is positive and that the progression of practices and implementations are only becoming more precise and refined over time, however this is very far from the case. It's a common complaint I've heard from almost everyone I know: software is more bloated and memory hungry than ever before. A kneejerk reaction to this would be to think, "Well, of course! Our programs are much more complex and sophisticated than they used to be! It would make sense for them to use more resources." This, however, is very far from the case.

Many modern programs perform the same functions as programs that were written two decades ago or, sometimes, even earlier than that. Consider, for example, the program that most people are using to chat over the internet in the current age. At the time of this writing, it's a program that starts with a D and rhymes with 'his board'. I refuse to name the program outright for it is an absolute abomination of the programming arts and the fact that such a thing can even exist let alone be massively popular is extremely depressing. At some point I will write a complete post on why this program is such an embarassment, but all I will say here is that it should be absolutely unacceptable to any user of software for a program that sends tiny packets over a wire and writes messages to a screen should require multiple gigabytes of memory.

Sometimes programs become so incredibly complicated in their scope that their actual function far supercedes their intended purpose by several orders of magnitude, as is the case with web browsers: a modern web browser is, at this point, essentially a virtual machine with its own complex instruction set, graphics contexts, window management, and input/output handling. Functions that were originally relegated to plugins which were adapted to fit the purposes of their own operating systems have been obsoleted and their functions have been integrated into this behemoth machine, no longer able to be directly controlled by their host system. Considering that most websites used to look like this one not all that long ago, I would make a very heavy case for the fact that modern web browsing has so far surpassed its original intention that it is, without compare, utterly insane.

duckw

This isn't to say that all technological progress is inherently bad and that increasing complexity is always wrong; in fact, what I'm trying to say is far from it. I find it amazing that the state of the art has come as far as it has and that computers are now more capable and featureful than ever before. It's wonderful to be able to develop programs without having to constantly worry about extremely tight memory and processor restrictions and it's wonderful to see how a well-written complex program can work on modern hardware. My problem is not that things are changing, but rather that having access to such an excess of resources makes some programmers incredibly lazy and some programs unnecessarily bloated. Just because a chat program can probably get away with using several gigabytes of memory doesn't mean that it should do so for any reason.

As a response, I would like to assemble and curate information, documents, opinion pieces, and software both personal and public as an example of what a golden age of software in the current era could look like. I want both the new programmer and the experienced programmer to be able to review these documents and consider their input into the wider programming community, helping to shape software that functions well and does not burden the end user rather than fat, slow software that users deal with against their will and better judgement. If enough programmers cared to review their practices and perhaps, dare I say, "reinvent the wheel" a little bit, the wide world of software and the art of computer programming could be at the greatest state that it has ever been since the invention of the semiconductor.

Lastly, I have intentionally set up this website in such a way that any browser from any era on any system with any graphical context should be able to render it for maximum access. I don't care if you're running a command line web browser or document reader or are viewing this on the most up-to-date graphical browser running on a 16K monitor (though you may want to zoom in p:), this information will be equally accessible to all users. If anyone reading this has further suggestions to increase accessibility to this website, please let me know.

Personal projects & content © AROLTD LLC 2008 — 2023
All other content owned & licensed by their respective owners