command dispatch via bash ${array[@]} notation, oh my!

“Programs must be written for people to read, and only incidentally for machines to execute.”— Harold “Hal” Abelson This highfalutin aphorism applies from the most cerebral application programming language of your choice, right down to the humble (or not-so-humble) bash script. Love or hate them, bash scripts are the primary method of launching processes on Linux …

Continue reading ‘command dispatch via bash ${array[@]} notation, oh my!’ »

hp Z240 SFF sound configuration redux

summary This is all the configuration required, on Linux 6.0.0-6-amd64 on an hp Z240 SFF PC. Put these lines in /etc/modprobe.d/snd_hda_intel.conf and reboot. options snd_hda_intel model=alc221-hp-micoptions snd_hda_intel power_save=0options snd_hda_intel power_save_controller=Noptions snd_hda_intel enable_msi=1 # /etc/modprobe.d/snd_hda_intel.conf problems With enable_msi set to 0 (the default), while happily playing sound for a random indeterminate period of time, the sound …

Continue reading ‘hp Z240 SFF sound configuration redux’ »

bash / ${APP_HOME}

During the production and deployment of any application larger than “hello world”, careful thought must be given to accommodating a likely set of changes. One of these is deployment location — the application must not have any hard-coded file system locations present, and must determine its location at runtime. Every bash script should start with …

Continue reading ‘bash / ${APP_HOME}’ »

making JetBrains IDEs run faster…

synopsis JetBrains’ IDEs suffer from awful interactive performance out of the box. This is unfortunate, and given the highly interactive nature of programming one would think it would be taken more seriously. This article gives instructions on how to change the “boot JDK” and compile the base classes of the JDK to binary form, so …

Continue reading ‘making JetBrains IDEs run faster…’ »

Debian 10 / hp Z240 SFF / audio setup

This is the minimal-but-complete setup required for Debian 10 onwards. Put the lines below into /etc/modprobe.d/snd_hda_intel.conf and reboot. # snd_hda_intel —————————— options snd_hda_intel beep_mode=0 options snd_hda_intel enable=1,0,0 options snd_hda_intel enable_msi=1 options snd_hda_intel model=alc221-hp-mic options snd_hda_intel power_save=0 options snd_hda_intel power_save_controller=N options snd_hda_intel probe_only=0,0,1 /etc/modprobe.d/snd_hda_intel.conf You should find that the audio behaves sanely from now on. My …

Continue reading ‘Debian 10 / hp Z240 SFF / audio setup’ »

As I Walked Out One Evening

As I walked out one evening,   Walking down Bristol Street,The crowds upon the pavement   Were fields of harvest wheat. And down by the brimming river   I heard a lover singUnder an arch of the railway:   ‘Love has no ending. ‘I’ll love you, dear, I’ll love you   Till China and Africa meet,And the river jumps over the mountain   And the salmon sing …

Continue reading ‘As I Walked Out One Evening’ »

python 3 / venv

abstract There have been thousands of articles written about Python virtual environments. As of 2020-10-07, a quick search on Google for “python virtualenv article” returns “about 1,450,000 results”. In the majority of cases I have seen, they are partially filled with impractical advice. They gush about pip, pipx, venv, virtualenvwrapper, pipenv, poetry and others, but …

Continue reading ‘python 3 / venv’ »

The Second Coming

Turning and turning in the widening gyreThe falcon cannot hear the falconer;Things fall apart; the centre cannot hold;Mere anarchy is loosed upon the world,The blood-dimmed tide is loosed, and everywhereThe ceremony of innocence is drowned;The best lack all conviction, while the worstAre full of passionate intensity. Surely some revelation is at hand;Surely the Second Coming …

Continue reading ‘The Second Coming’ »