Simo Virokannas

Writings and ramblings

Category: Informative

  • What is Software Salvage

    What is Software Salvage

    Summary This article describes the method for software rewrites when the original source code is unavailable – or unstable, of questionable quality or otherwise the product of a beautiful mind. Background One part of what I do is software salvage. I’ve had the joy of working on bringing life back to abandoned codebases, extend them…

  • Transference of Complexity

    Transference of Complexity

    Summary Programming languages have evolved in accessibility, complexity and readability in the past six decades. The overall internal complexity of a single software application has grown exponentially, while the amount of code lines written to achieve a specific end result has decreased. This naturally occurring transference of complexity brings about completely new kinds of problematic…

  • Google site-kit plugin for WordPress update mayhem

    I recently did a blanket update for all plug-ins for a WordPress site (good idea security-wise, bad idea, turns out, otherwise). This revealed a surprising three problems within the whole ecosystem. Here they are in descending order of importance: fixing the first makes the other two non-issues, fixing the second removes the third issue, fixing…

  • Compiling Pixar’s USD natively on Windows 11 / VS 2022

    If you’ve tried it, you’ve probably run into the endless catch-22 that is getting everything to behave when trying to compile the Universal Scene Description on a newly setup Windows machine. NOTE: if there’s any way for you to avoid this in your life, don’t look back, rejoice. Prerequisites You’ll need to install at least…

  • Out of the Box Software site is up

    The completely-renewed OOTB site is now up. You can find it either by clicking on a link in the sidebar (statement that might not be future-proof) or here: https://outofthebox.software

  • Gitlab-runner, MacOS 12

    If you’ve tried setting up a gitlab-runner on MacOS 12 you may have run into the same problem I did – even when you follow all the manual setup steps, it just won’t start (unless you run it in interactive mode). Note that this probably doesn’t apply to running it using homebrew. It might work…

  • Totally Arcade Controller

    With the A500 Mini finally out, it revealed a screaming void no one seems to be filling: a proper controller. Almost everyone I ever knew to own an Amiga 500 had one or two TAC-2 controllers by SunCom. It was undoubtedly the best game controller ever made, never to be repeated on any platform. This…

  • Compiling Pixar’s USD natively on Apple M1

    This is in no way meant to be a “standard, do it this way” kind of a solution, but just one way of making it happen. I don’t like how homebrew and alike plug themselves into default locations and potentially taint your environment, so I default to Python-centric virtual environment handlers like miniconda. With the…