Bash Prompts Collection

This web page is a child of the Bash Prompt HOWTO that I’m maintaining for the Linux Documentation Project. The HOWTO explains a lot more than I’m going to here. My interest in Bash Prompts developed when I found “The BashPrompt Themes Project (now long deceased). Some of their prompts show up here, and a […]
Optimising for maintainability – Gleam in production at Strand

Strand is a marketing agency based in London, UK. The company specialises in copywriting and content creation for many of the world’s largest enterprise technology companies, running marketing programmes that produce hundreds of white papers, case studies, blog posts and articles every year. Challenge For many years, Strand has relied on a custom-built project management […]
Why countries trade with each other while fighting

In World War II, Britain was fighting for its survival against German aerial bombardment. Yet Britain was importing dyes from Germany at the same time. This sounds curious, to put it mildly. How can two countries at war with each other also be trading goods? Examples of this abound, actually. Britain also traded with its […]
Brazil offers America a lesson in democratic maturity

IMAGINE A COUNTRY where a polarising president lost his bid for re-election and refused to accept the result. He declared the ballot rigged and used social media to urge his supporters to rise up. They did so in their thousands, attacking government buildings. Then the insurrection failed, the ex-president faced a criminal investigation and prosecutors […]
C++: Strongly Happens Before?
It started innocently enough. I just wanted to brush up on C++ memory orderings. It’s been a while since I last stared into the abyss of std::atomic, so I figured, why not revisit some good ol’ std::memory_order mayhem? Then I saw it. Strongly happens before. Wait, what? When did we get a stronger version of […]
Will AI Replace Human Thinking? The Case for Writing and Coding Manually

Learning to Think Again, and the Cost of AI Dependency. There are so many (hype/boring) posts about AI coming out every day. It’s OK to use it, and everyone does it, but still learn your craft, and try to think. Similar to what DHH said: It’s also more fun to be competent in something than […]
What brain surgery taught me about the fragile gift of consciousness

Sign up for The Nightcrawler Newsletter A weekly collection of thought-provoking articles on tech, innovation, and long-term investing from Nightview Capital’s Eric Markowitz. Notice: JavaScript is required for this content. There is a silence so profound it becomes its own kind of language. The night before my brain surgery, my wife and I sat across […]
How to Install TrueNAS on a Raspberry Pi

Now that Joel0 in the TrueNAS community has created a fork of TrueNAS that runs on Arm, I thought I’d give it a spin—on a Raspberry Pi. I currently run an Ampere Arm server in my rack with Linux and ZFS as my primary storage server, and a Raspberry Pi with four SATA SSDs and […]
AI adoption linked to 13% decline in jobs for young U.S. workers: study

A Standford study has found evidence that the widespread adoption of generative AI is impacting the job prospects of early career workers. Vertigo3d | E+ | Getty Images There is growing evidence that the widespread adoption of generative AI is impacting the job prospects of America’s workers, according to a paper released on Tuesday by […]
Group Borrowing: Zero-Cost Memory Safety with Fewer Restrictions

Child groups That’s a useful rule, and it can get us pretty far. But let’s make it even more specific, so we can prove more programs memory-safe. For example, look at this snippet: ref hp_ref = d.hp # Ref to contents damage = a.calculate_damage(d) a_energy_cost = a.calculate_attack_cost(d) d_energy_cost = d.calculate_defend_cost(a) a.use_energy(a_energy_cost) d.use_energy(d_energy_cost) d.damage(damage) print(hp_ref) # […]