How Do You Create the Pound Sterling Symbol (aka the GBP Symbol) £ when You Are Using a U.S. Keyboard?

Problem scenario
You type emails or type text in Notepad or Wordpad (e.g., in Windows).  Sometimes you use a web browser in Windows.  You want to create this symbol £.  What do you do?

Solution
Hold the “Alt” key and type “156” (with no quotes).

How Do You Troubleshoot the SonarScanner Error “java.lang.IllegalStateException: Failed to create lock in /opt/app/sonar-scanner/conf/…sonar_locak…DirectoryLock…”?

Problem scenario
You try to run sonarscanner from a command prompt.  But you get this message:

“java.lang.IllegalStateException: Failed to create lock in /opt/app/sonar-scanner/conf/…sonar_locak…DirectoryLock…”

What should you do?

Solution
Become a different user to run the sonarscanner command or use “sudo ” before your command.

How Do You Find the Data Type of a Variable in an Ansible Playbook?

Problem scenario
Through the register keyword you assign a variable.  You want to know what variable type it is (e.g., a string, a dictionary or a JSON).  You know the data type is not a Boolean.  What do you do?

Solution
If you have a variable (e.g., foobar) and you want to know what data type it is, do this:

debug:
  msg:
when:  foobar.stdout == “”

The playbook will tell you if foobar is a dictionary with an error. 

How Do You Troubleshoot an Ansible Error about a User Not Being Able to Authenticate when the Module is Supposed to Interact with a Database?

Problem scenario
You have an Ansible module that uses a database module.  When you run the playbook, you get an error about a user being unable to authenticate when this database module is run.  What could be wrong?

Solution
Is the user in the error message a user that is created via the playbook?  If it is, does that user get assigned a password? 

How Does the Linux Built-in Command “which” Work when There are Two Files with the Name You Are Looking for in Different Directories in the $PATH Variable?

Problem scenario
You are using the “which” command.  You only get one result.  How does Linux choose the result when the file exists in two directories in the $PATH variable?

Solution
Run this command to see every directory in the $PATH variable:
echo $PATH

The “which” command evaluates from left to right and will return the first match found.

How Do You Troubleshoot “Caught: java.lang.ArrayStoreException: org.codehaus.groovy.runtime.GStringImpl” when running a Groovy Program?

Problem scenario
You are running a Groovy program. 

Here is your code:

def input = System.console().readLine ‘Please provide some input: ‘
def x = input
def boardArray = new String[2]
boardArray[0] = “”
boardArray[1] = “”
boardArray[1] = “$x”
println boardArray[1]

When you run it (i.e., with groovy foobar.groovy), you get this error:

Caught: java.lang.ArrayStoreException: org.codehaus.groovy.runtime.GStringImpl
java.lang.ArrayStoreException: org.codehaus.groovy.runtime.GStringImpl

What should you do?

What is the Westrum Cultural Model?

Question
What is the Westrum Cultural Model?

Answer
Merriam-Websters Collegiate Dictionary 11th Edition defines culture as “the set of shared attitudes, values, goals, and practices that characterizes an institution or organization.”

What we might call the “Westrum Cultural Model,” based on Ron Westrum’s “The Three Cultures Model”, (according to this site), consists of three categories of corporate culture.  These three are pathological,

When Using Jenkins, What Are the Differences between a Declarative Pipeline and a Scripted Pipeline?

Question
In the context of Jenkinsfiles, there are two types of pipelines: declarative and scripted.  What are the differences between these two types?

Answer
1.  The syntax of the two is one difference.  While both are based on Groovy, Declarative Pipeline syntax is more simple (according to this posting).  Declarative Pipeline syntax follows more of an declarative paradigm whereas Scripted Pipeline syntax follows more of a imperative paradigm (according to this posting).

How Do You Troubleshoot the “kops” error “unable to infer CloudProvider from Zones (is there a typo in –zones?)”?

Problem scenario
You run a “kops” command but you receive this error:

“unable to infer CloudProvider from Zones (is there a typo in –zones?)”

How do you get the “kops” command to work?

Solution
There is a value and a format that are necessary for your kops’ “–zones” flag.

Determine what region you want to know the zone name for (e.g.,