I would call it more of a knee-jerk reaction more than a response to be honest. I’ve reached the point wherein I am more afraid of the government especially law enforcement rather than Covid-19; Atleast with the virus, you know what to expect and can prepare accordingly. I do appreciate their efforts and I am thankful for what little stability we currently enjoy. But the reaction of both the government and some people made me question: is the grass really greener where you water it? Or is the soil not suited for planting and it’s time to seek greener pastures?
Aluminum laptop stand
I saw this identical stand on one of Dave 2D’s videos which he got on Amazon. I found a similar one on Lazada for 16USD or 800PHP incluaive of tax and shipping, and it was Cash On Delivery as well.


It’s adjustable on either side and can fit thick devices and the alen screws tighten property without the need for locktite. It’s unbranded and heavy which makes it feel premium. The only gripe I had was with the paint finish. I would’ve wanted a brushed aluminum or powder coat finish. But it’s a minor issue you can fix by painting it yourself.
The War of Art
ExpressVPN Review

My experience with ExpressVPN has been pleasant for the past 7 days. I share the account with my wife and daughter primarily for consuming media. But one pleasant surprise is that you get Youtube Picture-In-Picture functionality when connected to US servers, atleast on Android. This is a YouTube premium features as far as I known, but I am finding it pretty convenient that I have access to it without paying extra.
I paid $99uSD for a 15 month month subscription, and I feel I am getting my money’s worth. There are cheaper alternatives but the reality is you do get what you oay for, so I opted for ExpressVPN which has reasonable pricing with reasonable ly good service.
You can use my link here to signup so both you and I get an additional 30 days for free. You’d want to use the Opera browser with their free VPN service to signup since ExpressVPN has different offers depending on your location.
A Sociopaths’ take on the ECQ for SARS-COV-2
We’re in the tail-end of week 6 of the Enhanced Community Quarantine implemented by the national government last March 15, 2020. Apart from the increased difficulty getting food and other “necessities“, not much has changed from our way of life. In actuality, it improved our quality of life; Air quality is better, noise pollution has gone down and our monthly expenditure has gone done. But I feel this is just the calm before the storm which majority of people don’t seem to notice. Regardless, the best course of action is to take the life lessons / reminders this experience has enlightened me with:
Privacy is freedom: The less people and the internet knows about you, the less people you’ll have trying to stick you with their unsolicited opinions up your ass because they have too much up theirs. It also pays to have less competition in this rat race we’re currently in.
It’s always your fault: Regardless of what policies governments and institutions institute, or decisions other people make for you, it’s you who’ll have to live with the consequences not them.
Murphy’s Law: “If something can go wrong, it will.” I’m already asking myself how I can better prepare for the next pandemic, let’s face it, we know it’s gonna happen again.
Stay away from social media: “Never argue with stupid people, they will drag you down to their level and beat you with experience” — Mark Twain
Granny still knows best: Rule #1: The Boss is always right. Rule #2: if the Boss is wrong, read Rule #1.
Live desktop summer feels
It’s been years since I last played with my desktop. Since PC hardware has grown by leaps and bounds since I last tried, I figured to give it a shot. Inspired by the Google Pixel live wallpaper I use this Ocean weather theme for Rain Wallpaper, an app you can find on Steam. Another theme on my rotation is this Elegant weather theme I found on DeviantArt.
Protected: Guilty pleasures
Deploying a WordPress plugin repo on github to WordPress on WIndows
I never learned how to use Subversion which is why publishing my work on WordPress becomes such a chore. Thankfully, I found a script that can deploy a local Git repository to WordPress.org. This script assumes you have the following setup and working in your Windows environment already:
- SVN, in this case I use TortoiseSVN
- GIT, I use the GIT-SCM and Github Windows client
- Already have a WordPress.org account and existing repository for your project
The script is originally from GaryJones from github which I modified to suit my needs. Simply put the script in the repository folder and change out the CHANGE_ME values before running the script.
You have the option to set the path of the local repository within the script or in the prompt, what I prefer to do is to just drop the script in the working directory and run the script there.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 |
VAR_CURRENTDIR=$(pwd) VAR_PLUGINSLUG="CHANGE_ME" VAR_SVN_USERNAME="CHANGE_ME" default_svnpath="$VAR_CURRENTDIR/tmp" default_svnurl="https://plugins.svn.wordpress.org/$VAR_PLUGINSLUG" default_plugindir="$VAR_CURRENTDIR" default_mainfile="$VAR_PLUGINSLUG.php" echo echo "WordPress Plugin SVN Deploy v3.1.0" echo echo "Let's collect some information first. There are six questions." echo echo "Default values are in brackets - just hit enter to accept them." echo # Get some user input # Can't use the -i flag for read, since that doesn't work for bash 3 printf "Q1. WordPress Repo Plugin Slug e.g. my-awesome-plugin: " printf "($VAR_PLUGINSLUG): " read -e input input="${input%/}" # Strip trailing slash echo echo "Q2. Your local plugin root directory (the Git repo)." printf "($default_plugindir): " read -e input input="${input%/}" # Strip trailing slash PLUGINDIR="${input:-$default_plugindir}" # Populate with default if empty echo # Check directory exists. if [ ! -d "$PLUGINDIR" ]; then echo "Directory $PLUGINDIR not found. Aborting." exit 1; fi printf "Q3. Name of the main plugin file ($default_mainfile): " read -e input MAINFILE="${input:-$default_mainfile}" # Populate with default if empty echo # Check main plugin file exists. if [ ! -f "$PLUGINDIR/$MAINFILE" ]; then echo "Plugin file $PLUGINDIR/$MAINFILE not found. Aborting." exit 1; fi echo "Checking version in main plugin file matches version in readme.txt file..." echo # Check version in readme.txt is the same as plugin file after translating both to Unix line breaks to work around grep's failure to identify Mac line breaks PLUGINVERSION=$(grep -i "Version:" $PLUGINDIR/$MAINFILE | awk -F' ' '{print $NF}' | tr -d '\r') echo "$MAINFILE version: $PLUGINVERSION" READMEVERSION=$(grep -i "Stable tag:" $PLUGINDIR/readme.txt | awk -F' ' '{print $NF}' | tr -d '\r') echo "readme.txt version: $READMEVERSION" if [ "$READMEVERSION" = "trunk" ]; then echo "Version in readme.txt & $MAINFILE don't match, but Stable tag is trunk. Let's continue..." elif [ "$PLUGINVERSION" != "$READMEVERSION" ]; then echo "Version in readme.txt & $MAINFILE don't match. Exiting...." exit 1; elif [ "$PLUGINVERSION" = "$READMEVERSION" ]; then echo "Versions match in readme.txt and $MAINFILE. Let's continue..." fi echo echo "Q4. Path to a local directory where a temporary SVN checkout can be made." printf "Don't add trunk ($default_svnpath): " read -e input input="${input%/}" # Strip trailing slash SVNPATH="${input:-$default_svnpath}" # Populate with default if empty echo echo "Q5. Remote SVN repo on WordPress.org." printf "($default_svnurl): " read -e input input="${input%/}" # Strip trailing slash SVNURL="${input:-$default_svnurl}" # Populate with default if empty echo printf "Q6. Your WordPress repo SVN username ($VAR_SVN_USERNAME): " read -e input SVNUSER="${input:-$VAR_SVN_USERNAME}" # Populate with default if empty echo echo "That's all of the data collected." echo echo "Slug: $VAR_PLUGINSLUG" echo "Plugin directory: $PLUGINDIR" echo "Main file: $MAINFILE" echo "Temp checkout path: $SVNPATH" echo "Remote SVN repo: $SVNURL" echo "SVN username: $SVNUSER" echo printf "OK to proceed (Y|n)? " read -e input PROCEED="${input:-y}" echo # Allow user cancellation if [ $(echo "$PROCEED" |tr [:upper:] [:lower:]) != "y" ]; then echo "Aborting..."; exit 1; fi # Let's begin... echo ".........................................." echo echo "Preparing to deploy WordPress plugin" echo echo ".........................................." echo echo echo "Changing to $PLUGINDIR" cd $PLUGINDIR # Check for git tag (may need to allow for leading "v"?) # if git show-ref --tags --quiet --verify -- "refs/tags/$PLUGINVERSION" if git show-ref --tags --quiet --verify -- "refs/tags/$PLUGINVERSION" then echo "Git tag $PLUGINVERSION does exist. Let's continue..." else echo "$PLUGINVERSION does not exist as a git tag. Aborting."; exit 1; fi echo echo "Creating local copy of SVN repo trunk..." svn checkout $SVNURL $SVNPATH --depth immediates svn update --quiet $SVNPATH/trunk --set-depth infinity echo "Ignoring GitHub specific files" # Use local .svnignore if present if [ -f ".svnignore" ]; then echo "Using local .svnignore" SVNIGNORE=$( <.svnignore ) else echo "Using default .svnignore" SVNIGNORE="README.md Thumbs.db .github .git .gitattributes .gitignore composer.lock" fi svn propset svn:ignore \""$SVNIGNORE"\" "$SVNPATH/trunk/" echo "Exporting the HEAD of master from git to the trunk of SVN" git checkout-index -a -f --prefix=$SVNPATH/trunk/ # If submodule exist, recursively check out their indexes if [ -f ".gitmodules" ] then echo "Exporting the HEAD of each submodule from git to the trunk of SVN" git submodule init git submodule update git config -f .gitmodules --get-regexp '^submodule\..*\.path$' | while read path_key path do #url_key=$(echo $path_key | sed 's/\.path/.url/') #url=$(git config -f .gitmodules --get "$url_key") #git submodule add $url $path echo "This is the submodule path: $path" echo "The following line is the command to checkout the submodule." echo "git submodule foreach --recursive 'git checkout-index -a -f --prefix=$SVNPATH/trunk/$path/'" git submodule foreach --recursive 'git checkout-index -a -f --prefix=$SVNPATH/trunk/$path/' done fi echo # Support for the /assets folder on the .org repo. echo "Moving assets." # Make the directory if it doesn't already exist mkdir -p $SVNPATH/assets/ mv $SVNPATH/trunk/assets/* $SVNPATH/assets/ svn add --force-interactive $SVNPATH/assets/ svn delete --force-interactive $SVNPATH/trunk/assets echo echo "Changing directory to SVN and committing to trunk." cd $SVNPATH/trunk/ # Delete all files that should not now be added. # Use $SVNIGNORE for `rm -rf`. Setting propset svn:ignore seems flaky. echo "$SVNIGNORE" | awk '{print $0}' | xargs rm -rf svn status | grep -v "^.[ \t]*\..*" | grep "^\!" | awk '{print $2"@"}' | xargs svn del # Add all new files that are not set to be ignored svn status | grep -v "^.[ \t]*\..*" | grep "^?" | awk '{print $2"@"}' | xargs svn add svn commit --username=$SVNUSER -m "Preparing for $PLUGINVERSION release" echo echo "Updating WordPress plugin repo assets and committing." cd $SVNPATH/assets/ # Delete all new files that are not set to be ignored svn status | grep -v "^.[ \t]*\..*" | grep "^\!" | awk '{print $2"@"}' | xargs svn del # Add all new files that are not set to be ignored svn status | grep -v "^.[ \t]*\..*" | grep "^?" | awk '{print $2"@"}' | xargs svn add svn update --quiet --accept working $SVNPATH/assets/* svn resolve --accept working $SVNPATH/assets/* svn commit --username=$SVNUSER -m "Updating assets" echo echo "Creating new SVN tag and committing it." cd $SVNPATH svn copy --quiet trunk/ tags/$PLUGINVERSION/ # Remove assets and trunk directories from tag directory svn delete --force-interactive --quiet $SVNPATH/tags/$PLUGINVERSION/assets svn delete --force-interactive --quiet $SVNPATH/tags/$PLUGINVERSION/trunk svn update --force-interactive --accept working $SVNPATH/tags/$PLUGINVERSION #svn resolve --accept working $SVNPATH/tags/$PLUGINVERSION/* cd $SVNPATH/tags/$PLUGINVERSION svn commit --username=$SVNUSER -m "Tagging version $PLUGINVERSION" echo echo "Removing temporary directory $SVNPATH." cd $SVNPATH cd .. rm -fr $SVNPATH/ echo "*** FIN ***" |
Subaru WRX, an end to a story
I finally got a Subaru WRX, an aspiration of mine since cr I was in grade school watching WRC on AXN. I opted to get a used low mileage (29,000km), slightly modified one for half the cost of a brand new current year model. There ia significant riak in getting uaed cars but with a little luck and a lot of research, there are pretty big savings to be had. Thankfully my prudence paid off and I got a good one for a reasonable price. The car already had most if not all the modifications i wanted:
- Invidia Q300 full exhaust
- STI brembo brakes
- STI 18″ wheels
- Mishimoto Cold Air intake
- Tuned to a modest 300 hrsprs
All i needed to do was some basic maintenance stuff to the cat:
- Change all fluids, oil, coolant etc
- Replaced all brake pads
- Replaced all filters
- Check tires and alignment
- Replaced tint
- Changed ownership and renewed registration for the year
All in all, it costed me half of what a new WRX goes for in today’s market, which is a good deal in my book especially if you count the cost of the modifications done already.
I should be feeling elated that I got the car I wanted for so long at a good price yet I can’t help but feel this empty disappointed feeling. I am happy I achieved the goal I set out to get, I just had this expectation that it would bring greater satisfaction. I should’ve paid more attention to the journey and not the destination now that I can reflect on it. It is a sexy car and I am glad I got it. The greater takeaway for me in this experience is that I shouldn’t hinge my happiness or expectation of happiness based on material things. It’s so cliche but so true at the same time… experience is still the best teacher.
Pillars of Reality – Jack Campbell
Started interesting enough though got a bit dragged out past the 3rd book. A good read for those looking for a Young Adult light fantasy series. Hoping the series continues though.
https://www.goodreads.com/series/147091-the-pillars-of-reality