How to disable macOS System Integrity Protection

Sometimes, we are working on advance software operation that require us to disable macOS system integrity protection temporarily. Steps: Restart your macOS system Hold down Command+R to go into recovery mode Inside recovery mode click Utilities Select terminal In the terminal type csrutil disable and press enter Restart the system To enable back the System […]

Continue Reading…

Fix xcrun: invalid active developer path

Fix xcrun: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun After recently updating my MacOS I encountered an error message xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun To resolve that we will need to reinstall xcode necessary components xcode-select –install […]

Continue Reading…

How to set default group on new files or directory in Linux

I am managing a linux server where I want developers to run a springboot application which will generate files and folders. Those newly application created files and folders must inherit the parent group ID to let other developers manipulate the generated information. chmod g+s is for setting and inheriting the setgid. setfacl -m g::rwx is […]

Continue Reading…

Search a word in a two dimensional array using Java

Overview I was playing this word search game with my children when I realized that I can create a simple Java application that search for words in a grid. You can checkout the source code at https://github.com/johnpili/search-a-word-in-a-two-dimensional-array-using-java Algorithm Concept Project Structure MainApp.java In this example, I created a 15×15 character array and populate it with […]

Continue Reading…

Generating Subresource Integrity (SRI)

Since launching my online recruitment platform and job vacancy portal. I became interested in rolling out my own content delivery network (CDN) to host my portal’s images, javascript and CSS. Thanks to NGINX, implementing a CDN is easy. Of course we need to ensure that our digital assets are not compromised during transport so we […]

Continue Reading…

Using MySQL TIMESTAMPDIFF to delete unverified user records

Building a public website with user registration and email verification is typical. It will require users to validate their email by clicking a unique generated URL link. Sometimes, user registration with pending verification will grow exponentially and needs an automated cleanup of records. In this example I created a simple MySQL stored procedure to delete […]

Continue Reading…