# Monday, January 27, 2020

Episode 595

Tibi Covaci on Migrating to the Cloud

Tibi Covaci discusses strategies and factors companies need to consider when migrating their applications to the cloud.

Monday, January 27, 2020 8:02:00 AM (GMT Standard Time, UTC+00:00)
# Saturday, January 25, 2020

AHouseforMrBiswasMisfortune followed Mr. Biswas his entire life. He was born slightly handicapped and grew up weak in body and spirit. When he was a boy, his father accidentally drowned as a result of his negligence. He was sent to live first with a craftsman, then with an abusive uncle and each stay ended disastrously. As a young man, his flirtation with a local young lady is misinterpreted as a proposal and he is pressured by her family into marriage. From that moment on, he finds himself dependent on the wealthy Tulsi family - a dependence he comes to bitterly resent.

A House for Mr. Biswas by V.S. Naipaul takes place before and during World War II among the east Indian community of the West Indian island of Trinidad.

The house that Mr. Biswas craves is a symbol of his freedom and independence - evidence that he will no longer rely on others for shelter or status or anything else - and for the respect that will accompany that independence.

The reader wants to pity Mr. Biswas, but it is often hard because so much of his pain is self-inflicted. He alienates everyone around him with his rages and his pettiness. The book must have been painful for Naipaul to write, as the title character is based on his own father. At times, it was painful to read as I recalled the times in my own life when I acted against my own best interest out of anger or spite.

There isn't much action in this book and Naipaul removes suspense by revealing the ending in the prologue; but he makes it work for several reasons:

He builds characters that the reader can care for, even if they are not likeable.

His prose and dialogue are wonderful - sometimes tragic; often humorous.

He weaves together large themes, such as the changing cultures in a post-colonial world and the conflicts of toxic relationships.

A House for Mr. Biswas is an excellent story of a limited man struggling to free himself.

Saturday, January 25, 2020 12:59:02 PM (GMT Standard Time, UTC+00:00)
# Thursday, January 23, 2020

GCast 70:

Deleting an Azure DevOps Project

Deleting a project from an Azure DevOps organization is not intuitive (at least it wasn't for me). Here is how to do it.

Thursday, January 23, 2020 6:08:00 AM (GMT Standard Time, UTC+00:00)
# Monday, January 20, 2020

Episode 594

Christian Geuer Pollmann on Erlang and Elixir

Christian Geuer-Pollmann describes the Erlang ecosystem, the Elixir language, and open source Azure tools he has built with Elixir.

Links:

https://github.com/chgeuer
https://twitter.com/chgeuer
http://blog.geuer-pollmann.de

Monday, January 20, 2020 9:34:00 AM (GMT Standard Time, UTC+00:00)
# Saturday, January 18, 2020

MIsForMagicM is for Magic collects 11 short stories by fantasy author Neil Gaiman.

The title is a tribute to Ray Bradbury's short story anthologies R Is for Rocket and S Is for Space and Gaiman's style is not dissimilar to Bradbury's.

The collection opens with "The Case of the Four and Twenty Blackbirds" - A detective story in the style of Dashiell Hammett's or Raymond Chandler's pulp novels, but featuring characters from nursery rhymes. Hard-boiled private eye Jack Horner attempts to solve the mystery of whether Humpty Dumpty fell from a wall or was pushed. The story is often laugh-out-loud funny.

10 more stories and a poem follow; they cover various subjects and styles, but revolve around the genres of fantasy, horror, and science fiction. These tales were written by Gaiman over a period spanning over 20 years. Many of them have appeared in other collections, but they were all new to me.

My favourite was "Chivalry", which tells of an old lady who buys the Holy Grail in a local thrift store for 70 pence and likes the way it looks on her mantle. When Sir Galahad arrives on his quest for the Grail, he offers her priceless treasures in exchange; but she really likes the way it looks between a ceramic figurine and a photo of her late husband.

Most of the stories are a bit scary, but none is terrifying. There is a bit of nudity and sex, so I would not recommend M is for Magic for young children. But teenagers and young adults will enjoy Gaiman's wit and creativity; And grown-ups like me will also like it.

The stories:

The Case of the Four and Twenty Blackbirds

Detective Jack Horner investigates the fall of Humpty Dumpty.

Troll Bridge

A young boy stumbles upon a giant troll, who declares he will eat the boy's life. The boy dissuades the troll by promising to return when he has experienced more life.

Don't Ask Jack

A mysterious and malevolent jack-o-lantern frightens the family

How to Sell the Ponti Bridge

An elaborate scam that impresses other grifters

October in the Chair

Each of the months of the year gather around a fire to exchange stories

Chivalry

An old lady discovers the Holy Grail in a secondhand shop. A few days later, Sir Galahad comes to her house on his holy quest.

The Price

The devil shows up and battles an adopted stray cat

How to Talk to Girls at Parties

Teenage boys attend a party hosted by alien females

Sunbird

An epicurean club travels to Egypt to capture and eat an extremely rare bird

The Witch's Headstone

A boy encounters the ghost of witch burned centuries ago and tries to help her

Instructions

A poem about what to do if you find yourself in a fairy tale.

Saturday, January 18, 2020 11:43:00 AM (GMT Standard Time, UTC+00:00)
# Friday, January 17, 2020

The C# string class provides a convenient method for replacing one string with another. The syntax is

string.Replace (<old string>, <new string>);

So the following code:

var oldName = "David";
var newName = "Mr. Giard";
var oldSentence = "My name is David";
var newSentence = oldSentence.Replace(oldName, newName);
  

stores the value "My name is Mr. Giard" in the variable newSentence.

It is simple and it works. But I recently discovered a limitation: Searching for the old string is always case-sensitive. If I want to do a case-insensitive search and replace instances of "David" or "david" or "DAVID" (or even "daVid"), the string.Replace method does not support this.

The following code:

var oldName = "DAVID"; 
var newName = "Mr. Giard"; 
var oldSentence = "My name is David"; 
var newSentence = oldSentence.Replace(oldName, newName);
  

Results in the value "My name is David" being assigned to newSentence. In other words, the Replace method did nothing.

Fortunately, I can use the regular expression library to do this. The code is below:

var oldName = "DAVID"; 
var newName = "Mr. Giard"; 
var oldSentence = "My name is David"; 
var regex = new Regex(oldName, RegexOptions.IgnoreCase); 
var newSentence = regex.Replace(oldSentence, newName);
  

It is only one more line than using Replace and it allows for much more flexibility. And, as Regular Expressions go, this one is quite simple.

C#
Friday, January 17, 2020 7:16:13 PM (GMT Standard Time, UTC+00:00)
# Thursday, January 16, 2020

GCast 69:

Azure DevOps Branch Policies

Learn how to set branch policies in Azure DevOps, including requiring approvers and requiring a linked work item.

Thursday, January 16, 2020 9:30:00 AM (GMT Standard Time, UTC+00:00)
# Monday, January 13, 2020

Episode 593

Annie Bougie on Autonomous Driving

Annie Bougie describes the different levels of autonomous vehicles and the state of the industry today.

Monday, January 13, 2020 9:28:00 AM (GMT Standard Time, UTC+00:00)
# Sunday, January 12, 2020

RecognitionsThe Recognitions by William Gaddis tells the story of Wyatt Gwyon, a talented but commercially unsuccessful painter. Recktall Brown, an unscrupulous art dealer, convinces Wyatt to produce paintings in the styles of Flemish masters and sell the as newly discovered originals. But it tells many other stories of dozens of characters who pass in and out of its pages.

There are some things that I really like about this novel. I marveled at the cleverness of much of the dialogue. I particularly enjoyed the fragmented conversations pieced together at cocktail parties - a technique Gaddis repeated multiple times. I liked the parallel issues of art forgery, a currency counterfeiting, plagiarism, and passing off an artificially aged mummy - different takes on those who dishonestly profiting from the works of others.

But the book went out of its way to confuse the reader and obfuscate its stories.

Gaddis seems to take pleasure in confusing his readers. He jumps from story to story and from character to character with wild abandon. I frequently found myself flipping back several pages in an effort to figure out who was speaking or who the author was describing. Even then, I was often unsuccessful. Add to this that some of the dialogue is in a foreign language and those phrases are sometimes significant to the story, so the reader is forced to set down the novel and translate the phrase. A thousand pages of this left me fatigued and confused.

Gaddis seemed to know that his novel’s complexity would tire the reader. He included one scene in which a book critic admits to reviewing a long book after reading only the jacket.

I powered my way through it, but ultimately found it unsatisfying.

Sunday, January 12, 2020 9:57:00 AM (GMT Standard Time, UTC+00:00)
# Monday, January 6, 2020

Episode 592

Jes Schultz on Data Engineering

Jes Schultz discusses the roles and responsibilities of a Data Engineer.

Monday, January 6, 2020 9:24:00 AM (GMT Standard Time, UTC+00:00)