Ori is fascinated by plants and insects, Bees especially. Heading to London pride whilst Ori and mummy travel to Cardiff for a day with her friends. All enjoying sunny weather and being entertained by the boy in the paddling pool. He is a tireless adventurer, walking and climbing anywhere that takes his fancy. Rapidly learning about risk and reward, action and consequence.

Starting Summer



Ellen and I infatuated with little boy Ori, such a joy to watch him develop. curious charismatic and driven.

Blessed to be seeing live shows from the likes of #fourtet #EricPrydz #JohnHopkins and #ChemicalBrothers . Audiovisual extravaganzas bringing the best of 3D light and sound synaesthesia experiences.

Work continues to be stimulating working on software for the Aurora supercomputer.



sun and snow

Stunning snowy weather and fun games with Ori playing in the snow. reflecting that whilst it is a challenge to be a functional parent with limitations regarding mobility and physical contact, it is such a blessing to have such a wonderful family. We enjoy each other very much and I am thankful for all the beauty and opportunity as I watch the snow on the roof melt in the sun and drip glistening into the gutter.

Vocola macro for multiple file search and replace in VIM editor using Dragon NaturallySpeaking

Returned to vim as primary IDE recently because for various reasons visual studio code wasn’t playing nicely in cross-platform environments.
Currently working in Golang & C (including developing bindings with CGO).
Good results with nerdtree, ctrlp, ctags, cscope, omnicomplete plugins for code navigation (with the relevant vocola macros for key-binding incantations).

But by far the most surprising experience was search and replace in multiple files without a plug-in:

# utility macros
EscWait() := {esc} Wait(200); # IDEs sometimes need delay between keypress
CmdWait() := EscWait() ":" Wait(200); # IDEs sometimes need delay between keypress
## search and replace in multiple files without plug-in
search with = CmdWait() "let @z=''" {left_1};
LoadReg() := Wait(200) {ctrl+r} Wait(200) "z" Wait(200);
replace in files = CmdWait() "args `grep -r -l '' .`" {left_4} LoadReg() {enter} CmdWait() "argdo %s///gc | update" {left_13} LoadReg() {right_1};

reference: this post

I’m finding this extremely useful and wanted to share.

Thanks again Mark and others for Natlink / Vocola.