Posts

Showing posts from 2020

SelfAwarePotato

Software Development String Encodings? Unicode? ASCII? UTF-8? ãéîöû? Setup Hadoop on Mac using HomeBrew - July 2020 Enjoy quickies with supplyAsync by knowing how to handle exceptions. Singletons! A Generic method to convert ResultSetFuture (of Datastax Java driver for Cassandra) to a list of table-row-model(POJO) for any table query Converting google/guava ListenableFuture to Java 8 CompletableFuture Computer Programming Euler Path in a graph using Hierholzer's algorithm

String Encodings? Unicode? ASCII? UTF-8? ãéîöû?

Image
4 years of my career as a Software Engineer and I was able to put off the topic of character encoding and somehow sleep peacefully at night everyday until last night. A piece of python code that I had written broke and the error was UnicodeEncodeError. My reaction was similar to the title of this post. The last night's sleeplessness was not because I had a broken code but because why I had put off something which is needed every time I worked with strings. ASCII: The time when strings used to be simple! Just like aliens were only sighted in America, computers too were sighted only in America (or at least only in English speaking countries). To deal with strings, only English characters were standardised as ASCII and they were mapped to each number between 32-127. The first 32 numbers were mapped to control characters(number 7 made your computer beep). Since computers worked with 8 bit word size then, characters could be represented eas

Euler Path in a graph using Hierholzer's algorithm

We will discuss how to find the Euler path(path is a sequence of vertices connected by edges) in a graph. The assumption we are taking in this article is, the given graph is connected and there is a Euler path in the given graph, although we will discuss a criteria which will help us know if there is any Euler path in graph. Moreover, we will present the pseudo code of one of the algorithm and pick up a problem and solve it using the algorithm discussed in the aricle. Intro: Definition: Euler path is a path such that we travel all the edges of the graph exactly once (repetion of vertices is allowed). Euler path example In the above example, one of the Euler path is: 1,2,3,4,2,6,2,5 Euler path can be a closed path i.e. a cycle also called Euler circuit or it can be an open path as in the above example aslo called Euler walk. Prerequisite Degree of a ve