Advanced dotenv config files for bash scripts

A technique commonly used practice in (deployment of) software projects is to put your local configuration, environment variables and secrets in a .env file in the root of your project. This .env file is structured as a one-dimensional lookup table (a list of key=value lines), and saved only on that server, never checked in to the project code.

Find installation folder for bash scripts

This is the start of a series on some bash tricks and features that I’ve developed for the bashew bash scripting micro-framework.

Generate individual tag/category/author pages for your Jekyll website

I’ve been migrating more and more of my websites to Jekyll static sites, from Wordpress. The advantages are clear:

  • version management with git suits me (it’s how I develop software).
  • deployment/hosting with Github Pages is very easy and can be automated
  • the security of having a static site (i.e. no visitor/hacker can change it) is a relief
  • sure, Wordpress has plugins and comments, but that has become more of a burden than a feature for me.

My disaster upgrade to LastPass Premium

LastPass has started pushing its free users towards a paid premium subscription. The way they do this is by only allowing the free version for 1 platform, e.g. only your laptop or only your mobile phone. This was announced by LastPass/LogMeIn on their blog last February, which caused somewhat of a backlash.

Detecting excessive SSD wear on Apple Silicon M1 machines

Some more professional users of the new M1 Macbooks are experiencing extremely high drive writes over relatively short time. The most severe cases have “consumed” about 10-13% of the maximum warrantable TBW (Total Bytes Written) value of the SSDs (given their capacity & using values for equivalent market-available NVMe drives).

• Feb 17, 2021

Every country in the world in 1 (Unsplash) photo

I wanted to demonstrate the power of my splashmark image markup script and did the following experiment:

Creating image reveal videos with ffmpeg and primitive (bash)

One of the projects I started during the lockdown is @squaredforwork which is now named “Guess the movie?” . It is based on years of experimenting with image manipulation and information reduction. Basically: how much visual information do you need to recognise a (familiar) image? I mostly worked with movie posters, since those are often universally recognisable images. Some examples of earlier tests might give you an idea (working with large square pixels here: Pixel Movie Quiz):

Running a CPU benchmark on Apple Silicon M1 (bash)

When I started working with my Mac Mini M1, I felt it was faster, but I couldn’t really compare with a proper benchmark. I work a lot with video so I created an Apple (M1 and older) benchmark that is focused on CPU-heavy video programs: ffmpeg and primitive.

Using Homebrew on Apple Silicon M1 natively (bash)

After reading all the raving reviews online about the new Apple M1-based Mac computers, and after losing too much time with my overheating MacBook Pro 2013 that’s on its last legs, I caved and bought a Mac Mini M1.

Private repos on Laravel Forge: Spark and Mailcoach

I’m developing a new service and I’ve decided to go all-in on Laravel. Not only am I developing the application in Laravel, and using ready-made components like Laravel Spark (SaaS user management and payment) and Spatie Mailcoach (mailing server), I also deploy to DigitalOcean with Laravel Forge. At 12$/month (for the ‘Hobby’ plan), even if it saves me only 15 minutes of time every month, that’s already worth it.