A Geek With Guns

Chronicling the depravities of the State.

Archive for the ‘Side Notes’ Category

The Government of Maine Must Be Abolished

without comments

The government of Maine must be abolished. I know what you’re thinking, I’m an anarchist so I say this about every governmental body. However, the government of Maine is deserving of special scrutiny because it committed a sin so egregious that no justification for its continued existence matters any longer. That sin was the failure to use the Oxford comma:

Drivers with Oakhurst Dairy filed the lawsuit in 2014 seeking more than $10 million. Court documents filed Thursday show that they settled for $5 million.

A federal appeals court decided to keep the drivers’ lawsuit alive last year. The suit concerned an exemption from Maine’s overtime law that says it doesn’t apply to “canning, processing, preserving, freezing, drying, marketing, storing, packing for shipment or distribution of” foods.

The disagreement stemmed from the fact there’s no Oxford, or serial, comma in the “packing for shipment or distribution” part. The drivers said the words referred to the activity of packing and shipping, but they don’t do any packing.

As I’m prone to say, you either use the Oxford comma or you’re wrong.

Written by Christopher Burg

February 12th, 2018 at 10:30 am

Posted in Side Notes

Tagged with

Explaining the Plebeians Love of the Games

with one comment

The Super Bowl is being hosted in my neck of the woods this year. It’s not bad enough that the entire city looks like it’s hosting an open-ended military presence but it also has to keep up this appearance all week. The plebeians, even though most of them can’t afford to attend the actual game, don’t seem to mind though. In fact many of them belief it’s an honor to host such a great event.

What honor do these individuals experience as they watch the Super Bowl taking place a few miles from their home on televisions that their fellow plebeians in, say, Houston, Texas don’t get to experience as they watch the same game on their televisions?

The honor of knowing that if a sizable nuclear bomb were dropped on the US Bank Stadium, they and their house would be consumed in the exact same blast!

What greater honor could any of us experience?

Written by Christopher Burg

January 30th, 2018 at 11:00 am

Posted in Side Notes

Tagged with

Our Dystopian Future

without comments

Many people, myself included, were expecting our dystopian future to reflect Nineteen Eighty-Four, Brave New World, or some odd combination of the two. It turns out that Orwell and Huxley weren’t prophetic but Mike Judge was. Welcome to your dystopia:

Written by Christopher Burg

January 17th, 2018 at 11:00 am

I’m Putting Myself on The Blockchain™

without comments

I am formally announced that I’m putting myself on The Blockchain™. Please throw money at me:

The stock market loves blockchains. Last month, the Long Island Iced Tea Company rebranded itself as Long Blockchain and saw its stock price triple. On Tuesday, restaurant company Chanticleer Holdings saw its stock soar by 50 percent after the company announced that it would be moving its reward programs to the blockchain. The company owns several burger brands and operates a number of Hooters restaurants. It also holds a minority stake in Hooters of America, the parent company of Hooters.

Written by Christopher Burg

January 3rd, 2018 at 10:00 am

Io Saturnalia

without comments

It’s almost Christmas so I will leave you with a gift, a picture of the Elk God proudly displaying the severed head of a demon elk he has slain.

Written by Christopher Burg

December 22nd, 2017 at 10:00 am

Another Day, Another Officer Involved Shooting

without comments

Yesterday an individual somehow managed to get a weapon into a police interview room and apparently drew the weapon against himself, which lead to an officer involved shooting:

A man was injured after a police shooting inside Minneapolis City Hall Monday afternoon.

Police chief Medaria Arradondo said Minneapolis police personnel were interviewing the man, and then left him alone in a room.

“And he began injuring himself with an edged weapon. After attempting to subdue the adult male subject, officers discharged their weapons,” Arradondo said.

The man was rushed to Hennepin County Medical Center. His condition is not known.

One has to wonder how the individual got the weapon into the interview room but I digress.

The more I see the term “officer involved shooting” the more I realize how euphemistic it is. The first reports of this incident simply mentioned an officer involved shooting, which didn’t tell me if an officer was shot, if an officer shot somebody, or if all parties involved were shot. If you read a headline that says, “An officer involved shooting occurred at the Minneapolis City Hall,” you might be lead to believe that somebody shot a police officer.

Why can’t people use the far less ambiguous description, “An officer shot somebody,” or, “An officer was shot?” Why do so many people fell the need to tiptoe around what actually happened?

Written by Christopher Burg

December 19th, 2017 at 10:30 am

Posted in Side Notes

Tagged with

An Interesting Psychological Phenomenon

without comments

Whenever there’s a story about an instance of abuse where the victim failed to fight back I see at least one comment asking why the victim didn’t fight back.

It’s an interesting question. I’ve often asked the same thing about inmates on death row. There is a population of individuals who have nothing to lose. If they follow the rules and act submissive, they’re going to die anyways. Why don’t they fight back? Certainly the minute chance of escape is better than the guarantee of death, right? Yet we seldom read stories about inmates on death row making a last ditch effort to escape before they’re executed.

It’s an interesting psychological phenomenon. I wish I had a better understanding of it.

Written by Christopher Burg

November 16th, 2017 at 11:00 am

Posted in Side Notes

Tagged with

The Evolution of Languages

without comments

If you’re familiar with any Romance language, then you’re familiar with the concept of gendered nouns. Each noun is assigned a gender; which can be masculine, feminine, or neuter (although some languages have dropped the neuter gender); which changes how its accompanying adjectives are declined and what pronouns are used to refer to it. Things can get interesting when a noun that refers to a person doesn’t reflect the gender of the person.

For example, the Latin word for farmer is agricola. Agricola, despite being in the first declension group of nouns (which are mostly feminine), is a masculine noun. Because of its grammatical gender it would be grammatically correct to use masculine adjectives and pronouns to refer to any farmer even if they’re female. Some Latin nouns could be either masculine or feminine depending on the gender of the person they described, which is a concept many of its successors have expanded on. French, for example, has masculine and feminine versions of many nouns that describe people. However, what does one do when they are referring to somebody whose gender isn’t known? This question has been a hot topic in French circles in recent years:

Paris (AFP) – Moves to make French more female-friendly have sparked impassioned debate in France, with an appalled Academie Francaise warning of a “mortal danger” to the language of Moliere.

At the centre of the debate is the growing use of formulations such as “lecteur.rice.s” for the word “readers” to embrace both genders.

[…]

But the school textbook referring to farmers as “agriculteur.rice.s” and shop owners as “commercant.e.s” — complete with a new punctuation mark called the “middle dot” at the level of a hyphen — sparked particular rage among French language purists.

I find it amusing that people who speak a bastardized version of Latin are worried about purity but I digress.

Language is one of my favorite topics to study. Since languages evolve spontaneously they becoming friction points. Different groups of individuals have different views on how languages should evolve. French is subject to these arguments more frequently than most other languages because there is an organization, the Academie Francaise, that attempts to control the evolution of the language. Whenever popular culture decides French should evolve in some manner the members of the Academie Francaise are there to bitch about how that evolution is unacceptable.

One side effect of the spontaneous nature of language evolution is that one can often get a feel for the concerns of many of a language’s speakers by looking at the most recent evolutions. Gender, for example, has become a larger concern in the United States and Europe. This has reflected in the predominant languages of those regions by the introduction of new words and, in the case of languages with gendered nouns, new grammatical rules.

Ultimately these changes will contribute to the languages changing so much that today’s speakers won’t be capable of comprehending speakers of the future. What is even more fascinating in my opinion though is that these changes will contribute to today’s languages splitting off into multiple other languages. In a way our concerns and disagreements can become so polarizing that we literally cease to speak the same language.

Written by Christopher Burg

November 14th, 2017 at 11:00 am

Posted in Side Notes

Tagged with

The Sordid State of Conspiracy Theories

with 2 comments

Remember when conspiracy theories involved shadowy organizations pulling the strings behind the scenes in order to advance plots so complex that they made James Bond villains look like simpletons by comparison?

Now we get mundane plots like George Soros paying some leftist militant to attack Rand Paul in order to send a message. I blame the degraded literacy rates. Nobody appears capable of crafting complex plots like those found in many novels. Instead people today seem to only be capable of concocting straight forward storytelling of the likes found in most Marvel movies.

Written by Christopher Burg

November 7th, 2017 at 11:00 am

Safari 11, Multiline HTTP Headers, and NSPOSIXErrorDomain:100.

with one comment

I was happy when Mozilla announced that it was going to take a serious stab at the browser market again and released Firefox Quantum, a beta version of Firefox that runs significantly faster than the current stable version. So far I’ve been mostly impressed by it. However, Firefox Quantum has one significant flaw, it hogs the CPU. Even when idling I’ve noticed Firefox Quantum processes taking anywhere from five to 20 percent of the available power on one of my CPU cores. I decide to compare this CPU usage against Chrome and Safari, which lead me down quite the rabbit hole.

It all started when I tried to load my blog in Safari. Previous versions of Safari haven’t had any difficulty loading my site but when I tried to load it in Safari 11 I received the following error:

NSPOSIXErrorDomain:100 is about as useless as an error message can get. Unfortunately, Google didn’t provide me much insight. After a series of Google searches I did come across this article, which discusses some problems previous versions of Safari have had with Content Security Policies (CSP). Since I implemented a CSP for this site, I figured it was a good place to start. Low and behold, when I disabled my CSP the site loaded in Safari again.

This confused me since, as I mentioned earlier, my site, with its current CSP, loaded in previous versions of Safari. I thought that maybe one of the fields in my CSP had been deprecated or was misconfigured, which lead me to testing with a very simple one line CSP. When I tested with the simplified CSP my site loaded again. When I added an additional line to my CSP the site stopped loading again. That lead me to suspect the line feed characters. I split my CSP into multiple lines to make it easier to read and edit so it looked like this:

add_header Content-Security-Policy "default-src 'self';
  script-src 'self' 'unsafe-inline' 'unsafe-eval' https://s0.wp.com https://s1.wp.com https://s2.wp.com https://stats.wp.com;
  img-src 'self' https://secure.gravatar.com https://s0.wp.com https://s1.wp.com https://s2.wp.com https://chart.googleapis.com;
  style-src 'self' 'unsafe-inline' https://fonts.googleapi.com;
  font-src 'self' data: https://fonts.gstatic.com;
  object-src 'none';
  media-src 'self';
  child-src 'self' https://www.youtube-nocookie.com https://akismet.com;
  form-action 'self';";

I know it looks a little wonky since it includes unrecommended values like ‘unsafe-inline’ and ‘unsafe-eval’ for script-src but those, as well as a few other odd values such as the ‘data:’ font-src value, are needed by WordPress, which was developed before CSPs were a thing. But I digress. I decided to collapse the entire HTTP header value into a single line so it looked like this:

add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://s0.wp.com https://s1.wp.com https://s2.wp.com https://stats.wp.com; img-src 'self' https://secure.gravatar.com https://s0.wp.com https://s1.wp.com https://s2.wp.com https://chart.googleapis.com; style-src 'self' 'unsafe-inline' https://fonts.googleapi.com; font-src 'self' data: https://fonts.gstatic.com; object-src 'none'; media-src 'self'; child-src 'self' https://www.youtube-nocookie.com https://akismet.com; form-action 'self';";

After I did that my site loaded in Safari again. Then I reverted my configuration to the original multiline version but changed the standard UNIX new line character \n to the Windows (which is also the standard for the web) \r\n. After I did that my site failed to load again. Safari simply didn’t like new line characters appearing in a header entry.

It seemed that Safari 11 was unhappy with something that every other browser, including its predecessors, are still perfectly happy with. I suspected this was a bug in Safari but decided to do some digging before submitting a bug report. This was a good choice because I was mistaken. Searching for information about multiline headers lead me to this entry on Stack Overflow, which lead me to RFC 7230. Amongst other things, RFC 7230 deprecated multiline header fields:

Historically, HTTP header field values could be extended over multiple lines by preceding each extra line with at least one space or horizontal tab (obs-fold). This specification deprecates such line folding except within the message/http media type (Section 8.3.1). A sender MUST NOT generate a message that includes line folding (i.e., that has any field-value that contains a match to the obs-fold rule) unless the message is intended for packaging within the message/http media type.

It turns out that Safari 11 is adhering strictly to RFC 7230. And as of this writing it’s the only browser doing so. It also turns out that I’ve been unknowingly writing my CSP against the HTTP standard all along.

The moral of the story is if Safari 11 throws an NSPOSIXErrorDomain:100 error, check your HTTP headers to ensure they don’t contain multiline values.

Oh, and if you’re wondering, Safari 11 uses significantly less CPU power than Firefox Quantum. Chrome also uses significantly less CPU power than Firefox Quantum. But it’s worth noting that Firefox Quantum is beta software and its CPU usage may improve before its final release.

Written by Christopher Burg

October 18th, 2017 at 11:00 am