• NPM Backdoor Bitcoin Wallet Hack

    Follow this github issue thread for the latest on a hack to a popular NPM libary, ‘event-stream’, that steals bitcoins from a https://copay.io/ wallet. And this related ‘apology’ thread for an interesting discussion on the benefits/pitfalls of Open Source Software and NPM.

  • Delay a Grails controller’s response

    Sometimes, for testing or development, you need to slow down an ajax response from the server. In the Grails framework, to delay a controller’s response, do the following: In the action you want to delay, insert: Thread.sleep(5000) as in: def index() { Thread.sleep(5000) … do some work… render … some response } where 5000 is more

  • Nginx Cheat Sheet

    Test and restart an nginx configuration change The reload will not happen if the test fails. sudo nginx -t && service nginx reload or, on a bitnami image: sudo nginx -t && sudo /opt/bitnami/ctlscript.sh restart nginx   Redirect all subdomains to the top level domain ie: http://www.mydomain.com -> http://mydomain.com In your DNS management system, you’ll more

  • Insert HTML after every Nth comment: use the “end-callback” argument

    I did not find any examples of using WordPress’s “end-callback” argument for “wp_list_comments”. It is documented by WordPress here. Here is an example of how to use it in child-theme code to add custom HTML after each top level comment. This example preserves comment hierarchy, ie: nested replies. In your child theme directory, create a more

  • Virtual Box Tips

    Mount a shared folder on a linux (Debian) guest: Make sure you have already installed the Virtual Box Guest Additions. Set up a ‘transient’ folder via the Virtual Box GUI (Devices > Shared Folders) In a terminal window in the linux guest, run: sudo mount -t vboxsf name_of_shared_folder_in_VBox ~/directory_in_guest_os/