Prefix Sum Algorithm

UPDATE – This post has been updated.

A lot of good things are happening in my work life. I will continue to comment in future posts.

Today I discussed an idea regarding a new service which will extract data from a huge set of files and will be able to allow access to users. Sorry I will not be able to comment much more on this. I have committed to have a first pass of the architecture and high level design documents first thing Monday morning. Continue reading “Prefix Sum Algorithm”

How to Create a Great Team Culture

This morning I woke up and put my cell phone on the tile ledge surrounding the Jacuzzi tub in the bathroom of my bedroom.  The ledge is 22 inches in height. My Samsung Galaxy 8+ had on an “i-Blason Samsung Galaxy S8+ Plus case, [Ares] Full-Body Rugged Clear Bumper Case with Built-in Screen Protector for Samsung Galaxy S8+ Plus 2017 Release (Black)” cover. It fell and hit the floor. The screen cracked on one corner. Not sure what was the purpose of the protector. I will be replacing my cell phone in the near future with a Google Pixel 3a XL. Continue reading “How to Create a Great Team Culture”

DynamoDB

I do not like to live of past memories but this morning I spent a few minutes updating the About me … section in this blog. I included the fact that since my early 20’s I started dabbling with starting my own businesses. At the time I got together with a couple friends and opened a liquor store. I was able to secure beer distribution of one of the largest breweries in Peru. The rules are that breweries sell only via distributors and distributors only sell to liquor stores. About a year after, I sold the business due to the fact that I received a scholarship to attend Cornell University and permanently move to the USA.

Continue reading “DynamoDB”

Arrays Left Rotation

Last evening I read the article “Programmable Solid-State Storage in Future Cloud Datacenters” by Jaeyound Do, Sudipta Sengupta and Steven Swanson which appeared in volume 62 number 6 edition of Communications of the ACM. This morning I read it once again. As you might already know I am passionate about storage and have been working on it for a while. The article deal with SSD drives and how they can help improve performance by providing compute resources close to the data. Continue reading “Arrays Left Rotation”

Simple Array Sum

It is a sunny but not so warm day in the Twin Cities of Minneapolis and St. Paul. The high for today will be 68 F which is a few degrees below the average high for this time of the year. Looks like a perfect day for a walk. My wife and I will be out and about after work today.

This HackerRank challenge is quite simple. The reason I went for it is due to the fact that a few weeks ago I exchanged some messages with JAVAAID. He has a YouTube channel and solves HackerRank challenges. Continue reading “Simple Array Sum”

11 to 12 Java Questions

As I mentioned in my previous post, my wife and I spent a week in Portugal. On the previous post I covered the days in Salema which is a town in the Algarve area. I will now comment on our stay in Lisbon.

Lisbon continues to grow. We stayed in an area named “Barrios Altos”. The area is hilly, the streets are paved with cobble stones so as the sidewalks some of which do not seem to allow two people side by side. On many streets you have parking on one side and the other is shared by trolleys, cars, buses and delivery trucks. We loved the area which contains a mixed of houses, buildings, businesses and restaurants. It seems like the concept of zoning did not take off in Lisbon. That said, my wife and I loved the city, its people and culture and will be returning for more in a few years. Continue reading “11 to 12 Java Questions”

Porting MD5 Code

Last week my wife and I returned from a one week trip to Portugal. We had not been there in more than a decade. Some things have changed while other not. People continue to be very nice and helpful especially when you attempt to utter a few words in Portuguese.

We arrived in Lisbon and headed to the rental car office. In less than an hour from arrival we were heading south to the Algarve. We have watched a few YouTube videos by Rick Steves and had purchases one of his travel guides for Portugal. In more than one occasion Rick has mentioned that Salema is his favorite beach in the Algarve. By experience we now know why. It is a small town sitting on a relatively small bay with blue and green waters. The population is less than 300 people. My wife took a picture at a restaurant on the beach while the temperature was hitting 96 F and we were enjoying delicious fresh sea food and drinking Sagres beer. From our table we could hear people conversion and different languages. Our waiter was taking care of a few tables and was able to switch to the language spoken by the customers (English, French and German). We only spent two days and headed back to Lisbon. Continue reading “Porting MD5 Code”

First 10 of 50 Java Questions

Last evening I ran into the article Review these 50 questions to crack your Java programming interview. I am a firm believer that no matter which programming language you use, you will concentrate of the classes and methods you commonly use for work. I tend to concentrate on two to three languages (e.g., C/C++, Java and JavaScript) depending on what I am doing. For this reason it is good to refresh knowledge and who knows, learn something new, by going over the questions and attempting to answer them before looking at the suggested answer. Continue reading “First 10 of 50 Java Questions”

C++ Boost Library Visual Studio 2017

Yesterday I spent time attempting to port a C DLL that I wrote some time ago to generate MD5 digests for a storage server. At the time I used as a base code provided by RSA Data Security, Inc. and designed and implemented a set of functions that could be directly called in applications / servers that would require generating MD5 digests for strings and files. When done I package the results into a DLL. The library has been in production for a long time. I used the C programming language for performance and the code was built for 32-bit processors. Continue reading “C++ Boost Library Visual Studio 2017”

Git merge vs. git rebase

Currently I am working on a 64-bit API for a storage server at work. The plan is to port a limited number of APIs in order to be able to call them directly from other applications / services without having to marshal such calls. I am trying to convert the data structures from 32 to 64 bits while keeping backwards compatibility. At some point in time we should be able to port with little additional effort the current storage server to 64-bits and still support client applications / servers running on 32-bits. Continue reading “Git merge vs. git rebase”