awk Commands Cheat Sheet

Sunday, June 17, 2018

awk - which is not an acronym for anything other than the first letter in the three creator’s last names - is a text processor and is included with practically every Unix-like system. It has its own programming language that can be used to parse through text line by line. It has no problem parsing through a large amount of text data that other programs might choke on.

Continue reading...

Use Microdata to Improve Your Snippets in Google Search Results

Monday, April 2, 2018

Lately I have been trying to find new ways to make all my blogs posts more relevant in Google Search Results. One major thing I have neglected to pay attention to since the inception of this blog was how my blog post snippets look in Google Search Results.

Continue reading...

ChromeOS Keyboard and Trackpad Shortcuts Cheat Sheet

Sunday, March 11, 2018

For over a year I have used ChromeOS on an HP Chromebook 13, and more recently a Google Pixelbook, as my work operating system. I was apprehensive at first to use a Chromebook after using Mac laptops personally and professionally for over 10 years. However, I have been pleasantly surprised with ChromeOS because of its simplicity, cloud integrations, ease of updates, and I have started using it more and more over macOS.

Continue reading...

Find All Shared Files in Google Drive with a Python Script

Wednesday, January 3, 2018

Google Drive makes it very easy to share files. You can easily and securely share files to anyone with a Google account or to anyone else by creating a shareable link that is accessible to anyone that knows the link. The shareable link contains a 33 character random string, so it’s very difficult to guess the URL if you are worried about someone other than your intended recipient looking at the shared file.

Continue reading...

Chromecast High Pitched and Distorted Audio

Monday, November 13, 2017

I am a big fan of Google’s Chromecast. I really like having a dumb device attached to an unfortunately not dumb TV that is entirely controlled via a smart phone. It keeps the number of remotes to a minimum, and it allows anyone on your network to easily watch their own content. I rarely have troubles casting to a Chromecast except when using particular mobile apps that do not implement the Chromecast APIs properly.

Continue reading...

Deploy a Three Tier Web Application to Kubernetes

Saturday, June 17, 2017

Multi-tier architectures are a common way to design web applications:

  1. A frontend - presentation - tier which provides the user interface
  2. An application - logic - tier where the processing happens
  3. A backend - data - tier where different storage technologies run

The different tiers could be deployed to a single virtual machine. Configuration management tools such as Ansible, Salt, Chef, or Puppet could be used to automate the deployment process. However, if the web application needs to start handling more traffic, it is only a matter of time before the resources of that single virtual machine are consumed. The single virtual machine could be scaled up by adding more CPU, RAM, and storage, but there is usually an upper limit to doing that.

Continue reading...

Beginning to Understand Docker and Kubernetes

Tuesday, June 13, 2017

If you are just getting started with containers and container orchestration, it can be difficult to focus on what to learn with all the different technologies available. It is important to understand the basics so you can build your foundational knowledge.

Continue reading...

Use Google App Engine and Golang to Host a Static Website with Same Domain Redirects

Wednesday, March 8, 2017

There are several inexpensive ways to host a static website generated with a static site generator like Jekyll, Hugo, or Pelican:

This entire blog is statically generated using Jekyll. However, I am unable to use any of the options above, because, over this blog’s lifetime, I have changed domain names, changed URL schemes, and renamed posts, and I want to keep alive all of the old URLs.

Continue reading...

curl Commands Cheat Sheet

Tuesday, March 7, 2017

Anyone involved with web development, web application programming, creating REST APIs, or interfacing with REST APIs is going to have the curl command in their tool belt. It is an extremely versatile tool that can talk to many different protocols.

Continue reading...

Use Google App Engine and Python for Inexpensive Domain Redirects

Monday, March 6, 2017

This blog has existed under a few domain names: workingconfig.com, thornelaboratories.net, and, now, thornelabs.net. workingconfig.com didn’t exist for very long, and never had many - if any - backlinks to it; it didn’t make sense to keep those URLs alive. However, thornelaboratories.net did exist for a longer period of time, and it had URLs I wanted to keep alive.

Continue reading...