Missing Book – Amazon.com

I have been purchasing items from Amazon through the years. With two exceptions the experience so far has been very positive.

Years ago, my wife and I purchased via Amazon a Le Creuset pot for our son. The pot was made of ceramic. The pot arrived at our son’s residence chipped. When we learned about the issue, I checked on the Amazon web site and filled the form to return the item and get a reimbursement. We decided that a ceramic pot might not be a long lasting item. So far all was fine. Our daughter in law was going to return the item. Apparently she lost the slip and we had no way to prove that we had returned it to Amazon. We were not reimbursed for the purchase. Like I said, the issue was on our court. Continue reading “Missing Book – Amazon.com”

Coding Conventions – C Programming Language

Last week I spoke with several developers regarding coding conventions for the C programming language. Most of them responded that there is some documentation by the organization, but some of them have never found it or read it. Most of them just look at existing code and try to mimic. The issue is that on most legacy projects, there is code written using different styles. Some organizations use some tools to extract documentation and or code metrics. With time those tools may have changed leaving behind artifacts that are no longer needed. Continue reading “Coding Conventions – C Programming Language”

Kubernetes

Kubernetes, it appears to me to be a funny sounding word that could be uttered by an actor in a science fiction movie. If interested in the actual origin of the word, take a look at the following Kubernetes link in Wikipedia.

I am more interested in what it does than how the word came to be (even though I did read the entire Wikipedia article). In the book Production-Ready Microservices by Susan J. Fowler; published by O’Reilly (which I purchased from Amazon and read), a nice and simple diagram is used to describe the four-layer model of the microservice ecosystem. Continue reading “Kubernetes”

Technical Debt

I have been architecting, designing, documenting from an engineering point of view, implementing, and testing software products and services for a few decades. Many years ago, working for a Fortune 500, I was troubled by the practices used to develop software. It seems that there had to be better ways to get from requirements to products and services. That induced me to read books and papers and take several college courses in order to satisfy my curiosity and be able to apply and create better ways. Continue reading “Technical Debt”

ASP.NET Core

I apologize for not being consistent on my posts. Technology and projects change quite rapidly so what might be of interest today might not be in a few weeks. In the past few weeks a decision was made to use the Windows platform to develop the next generation of a storage server. The storage server will be developed using ASP.NET Core. Due to that fact, I have been experimenting with the ASP.NET Core SDK and runtime. Yes, the last statement is not a typo. The ASP.NET Core has a SDK using its own version number and a runtime using a different version number. Continue reading “ASP.NET Core”

Eventual Consistency

What is eventual consistency and why would we bother with it? Let’s first start by taking a look at the CAP theorem.

What is a theorem? For that we could search in on-line (just for speed) dictionaries and come up with some of the acceptable definitions. Please note that the most words have different definitions depending on how they are applied. The word “theorem” falls into such category. I am going to use the set of definitions from Dictionary.com. The word is a noun. It has different meanings in mathematics, logic, as a rule or law, and as an idea, belief, method, or statement generally accepted as true without a proof. Continue reading “Eventual Consistency”

Managing Binary Trees – Linux

This post deals with an API for binary trees in Linux. The API consists of the following functions:

Function Brief Description
tdelete() Deletes an item from a tree.
tdestroy() Deletes the entire tree.
tfind() Finds an item and if not found returns NULL.
tsearch() Search a binary tree for an item.
twalk() Performs a depth-first, left to right tree traversal.

In the past I have used and implemented, using different programming languages, several classes, methods and functions to deal with binary trees. Binary trees are used to keep data in sorted order. This allows for quicker search times. This particular implementation comes with the Linux operating system. You can read more about it by typing on a Linux console:  man twalk Continue reading “Managing Binary Trees – Linux”

Building Microservices – Peek

In general I tend to read only one book at a time. I fully understand that when you are in K-12 and later in college, you are obliged to read books for the different simultaneous courses that you are taking. Once people are done with formal training, most of us never read a book again. That is a shame. It seems that the rush in life does not give us time to read. When tired we just sit and want to be entertained by whatever is being showed on TV or at a theater. My wife and I prefer to sit down and chat. When we are not working and are not together, we both read books. About a year ago we stopped watching TV so we returned the cable boxes. Today we only have Internet access. That way, when someone recommends a movie, we are able to get it on-line. All our TV sets at home are equipped with Chromecast which makes it so easy to watch from pictures to movies. Continue reading “Building Microservices – Peek”

Geographic Information Systems (GIS)

A few weeks ago I was looking in Amazon for books that dealt with photogrammetry. During my search some associated books showed up. After taking a look at the table of content on two that called my attention, I decided to go with both, not for depth in the subject, but to get a broad look at GIS.

One of the books I selected is titled Geographic Information Systems – An Introduction by Tor Bernhardsen published by Wiley in 2002. In chapter 10 Data Collection II, section 10.3 Photogrammetry Mapping provides a simple and high level description of the basics in the subject. To be honest, you can get a more up to date and extensive description in Wikipedia. Continue reading “Geographic Information Systems (GIS)”

Dedication, Drive, Excellence and Passion

For the past few years my wife and I decided to stop wasting time watching TV. It seems like the content of programs is quite weak and depending on the time the show is aired, the number of commercials increases to the point that a half hour program is aired in one hour. We used to make fun of commercials from cable networks that boasted the feature of being able to watch a program while simultaneously recording other three shows. Continue reading “Dedication, Drive, Excellence and Passion”