Searching yarn

Twts matching #reading:
Sort by: Newest, Oldest, Most Relevant

The insanity of being a software engineer
Software gets more complicated. All of this complexity is there for a reason. But what happened to specializing? When a house is being built, tons of people are involved: architects, civil engineers, plumbers, electricians, bricklayers, interior designers, roofers, surveyors, pavers, you name it. You don’t expect a single person, or even a whole single company, to be able to do all of those. ↫ Vitor M. de Sousa Pereira I’ve always found that softwa … ⌘ Read more

⤋ Read More

Apple’s Darwin OS and XNU kernel deep dive
Apple’s Darwin operating system is the Unix-like core underpinning macOS, iOS, and all of Apple’s modern OS platforms. At its heart lies the XNU kernel – an acronym humorously standing for “X is Not Unix.” XNU is a unique hybrid kernel that combines a Mach microkernel core with components of BSD Unix. This design inherits the rich legacy of Mach (originating from 1980s microkernel research) and the robust stability and POSIX compliance of BSD. The … ⌘ Read more

⤋ Read More

Getting the firmware of a VTech/LeapFrog LeapStart/Magibook
This is a very small blog post about my first reverse engineering project, in which I don’t really reverse engineer anything yet, but I am just getting started! A family member asked me to add additional book data to the LeapStart he bought for his son, this is the starting point here. ↫ leloubil’s blog We’ve all seen toy, child-focused computers like these, and I always find them deeply fascinating. I’m not buyi … ⌘ Read more

⤋ Read More
In-reply-to » This weekend (as some of you may now) I accidently nuke this Pod's entire data volume 🤦‍♂️ What a disastrous incident 🤣 I decided instead of trying to restore from a 4-month old backup (we'll get into why I hadn't been taking backups consistently later), that we'd start a fresh! 😅 Spring clean! 🧼 -- Anyway... One of the things I realised was I was missing a very critical Safety Controls in my own ways of working... I've now rectified this...

So I re-write this shell alias that I used all the time alias dkv="docker rm" to be a much safer shell function:

dkv() {
  if [[ "$1" == "rm" && -n "$2" ]]; then
    read -r -p "Are you sure you want to delete volume '$2'? [Y/n] " confirm
    confirm=${confirm:-Y}
    if [[ "$confirm" =~ ^[Yy]$ ]]; then
      # Disable history
      set +o history

      # Delete the volume
      docker volume rm "$2"

      # Re-enable history
      set -o history
    else
      echo "Aborted."
    fi
  else
    docker volume "$@"
  fi
}

⤋ Read More