How to Execute a Stored Procedure in Laravel 5.6
I've been stumped on this and tried everything I can think of but I can't get Laravel to execute a working mysql query to reorder an ordering column when deleting a row.
Here's a sample simplified query, which works directly in mysql:
Laravel code that doesn't update the database but throws no errors:
Other things I've tried which throw errors including saying there's an error in the query:
I've also tried splitting it the statements with no luck:
I tried a few other things which I didn't log in Git but I had no luck getting any of it to work. I asked for help on the forums and people told me to use Laravel's Eloquent model to update rows one by one which is pretty inefficient. You get extra trips over the network (especially important when the code is not on the same server as the database server since you can get dropped calls), extra connections to the server, the extra overhead of processing the query on the server and in the database, etc instead of just having mysql make the update.
The recommended solution may not seem like a big deal but I've run into issues where client connections have been dropped mid-update and left a table partially renumbered.
As a last resort and workaround, I opted to use a stored procedure to accomplish my goal. That presented its own can of worms as searching for examples on how to execute stored procedures in Laravel 5.x was also not easy. There's nothing in the documentation and all the examples I found didn't work.
Here's what worked for me with Laravel 5.6, with mySQL 5.6.38:
Self-signed SSL certificates not working with MAMP and Chrome
I use MAMP Pro for most of my PHP development and Chrome has annoyingly been blocking the self-signed SSL certificates MAMP generates, saying the certificate is not valid and "Your connection is not private":
Thankfully, I found an easy solve to fix this. These steps assume you've created a host in MAMP. You'll need to go to the SSL tab of the host you are trying to fix and
Go back to Chrome, and reload the page and the certificate should work now:
How to get shape type in Visio using VBA?
I'm working with a Visio 2016 file with over 100 tabs and need to extract the data (mainly text, connector from/to, and shape) for data processing for a processing engine. I was trying to figure out how to get the shape type name in Visio using VBA. For example, in a flowchart, I'm trying to figure out how to tell if a shape is a process, decision, data, etc. The
property seems to always return 3 which appears to be visTypeShape from https://docs.microsoft.com/en-us/office/vba/api/visio.visshapetypes. After hunting through all the available properties on the Shape object, I found that the shape.Master.Name property will return the shape name, but you need to check if it's Nothing first in case it's not a shape.
I didn't do that and it kept breaking the script originally because some of the pages had text fields and the first few items on the first sheet I was working with were text boxes. Hopefully this snippet will save you the time I wasted figuring it out.
How to get website average latency in BASH
This is tested on Mac only. Add these two functions to your .bashrc and do a shellupdate in terminal to load the latest, or just grab my dotfiles from my github: https://github.com/gregvarghese/dotfiles
Usage example:
How to fix npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
A friend was running into an error when using node to install a package. When installing the package he was getting the error "npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules". The fix turned out to be pretty simple and he just needed to take ownership of the node_modules folder.
Open terminal and run this simple snippet to fix the problem:
How to remove wrapping tags in PHP Storm
How often do you code something and need to delete a wrapping link or div? I was using PHPStorm and had grabbed some code from another file that had links in the tags which weren't needed in the new file. I didn't want to manually remove each link and after a quick look around PHPStorm's menus, discovered that PHPStorm has a really useful command to remove the wrapping element for you.
Select the element, then from the menu, choose Code > Unwrap/Remove... or use the keyboard shortcut, Command + Shift + Backspace and then choose the appropriate wrapping element to remove.
How to Prevent Raspberry Pi Zero from Blanking or Sleeping
I was setting up a Raspberry Pi Zero in an office to use for displaying a slide show of pictures on a TV in the waiting room and dismayed to learn it would constantly go to sleep after a few minutes. I researched and tried setting the consoleblank=0 in config.txt with no luck along many other solutions, but learned none of them worked for the Raspberry Pi Zero.
I'm not sure why, but I got an error that some dependencies were not installed. If that happens to you as well, run this command in terminal:
and then run the install for xscreensaver again
Nowย under Preferences, you'll see a new option for screen saver:
On the Display Modes tab, you'll see a drop down for Mode. Choose "Disable Screen Saver":
Your raspberry pi zero will now no longer go to sleep.