Posts

Showing posts from September, 2020

Yet Another D3 DAG Sample code

Image
  Photo by Pixabay from Pexels.com In many cases when we need visualize relations and associations between entities, graph visualization tools are valuable. One of the great open source libraries for rendering graphs on web pages is D3.js . I use it in the past and yesterday, I spent some time to play with it. I have created a simple directed acyclic graph, DAG with it. The source code is in  https://github.com/dennisseah/d3_dag . D3.js is widely used because it is easy to learn and there are abundant of great examples . Recently, I used it for Microsoft Summer Hackathon where we used its map and charting API. Images of them can be found in my previous blog, deaths due to police actions in USA . When talk about D3.js , it is almost impossible to miss this guy,  Mike Bostock who is the creator of D3.js . Before his creation, it is extremely painful to draw on svg . And even if we are able to create svg drawings, they usually looks ugly. :-) This is short blog to share my code in  h

Azure C# SDK

Image
Photo by Brett Sayles from Pexels.com I took some time to look at Azure SDK for .Net because I am new to it. In this blog, I share my findings, observations, and sample code. Azure has  REST API  to manage its services and resources, and here is the Git repo. We can definitely make HTTPS call to Azure API Server once we understand its specification. Alternatively, we can use the Azure SDK for .Net . (there are many examples and resources over here ) . Last week, I have the opportunity to try them out, and my sample code are in a public git repo . Most of the code are in Common folder. For example, to create a resource group, we do using CSharp_Azure_API.Common; using Microsoft.Azure.Management.ResourceManager.Fluent.Core; ... var subscriptionId = EnvironmentVals.GetSubscription(); var credentials = Authentication.GetCredential(); ResourceGroups oResourceGroups = new ResourceGroups(credentials, subscriptionId); oResourceGroups.Create(rgName, Region.USWest); which in turn calls

programming languages

Image
Photo by cottonbro from Pexels.com Recently, a new graduate ( B.Sc. Computer Science ) asked me about learning programming languages. He does not have any professional programming experiences, and he used  Java and Python for his school projects. He rated himself as an average programmer, and he wants to improve his programming skills. Therefore, he believes that he must work on his proficiency in one or two programming languages. Being paranoid about pointing him to the wrong directions, I did not completely answer his question. I told him that it depends on which software stack that he is interested in. For mobile applications, he needs to learn native mobile application development, and the programming languages shall be  Swift , Java or Kotlin . For web application development, there are  Javascript , Typescript  and  Flow . After we've parted, I keep thinking about his question which appears to be a simple one, and yet I cannot provide good answers. In the perspective of a

up-skilling software engineers

Image
Photo by Julia M Cameron on Pexels.com   When you asked the leaders in any software companies about delivering great and innovative products, they'll tell you that they are working hard to bring in talented  software engineers, and providing them with all the tools required to deliver such products. We need talented software engineers because They have the capacity and ability to learn . It may be attending some conferences to understand the latest trends and technologies. It may also be spending some time to hack. Hacking (or trying new things) brings new perspectives to software development. They are innovative . Usually, this involves looking at things at different angles (or even turn the world upside down - an impressive talk by Cafer Tosun, Senior Vice President of SAP ), and provide intelligent solutions. They understand the limitations and opportunities . Most of the time, there are important decisions to be made, and they are able to provide detailed information on what

deploy React App in Azure Blob Storage $web container

Image
  Photo by Phil Kallahar on Pexels.com In this blog, we show how to deploy React  application to a Azure Blob Storage web container. Static websites on Azure Blob Storage is available in December 2018 [Announcement] . Liquid Guage I have created a simple React Application with Liquid Gauge at GitHub . You can clone it and copy the content to a Azure Dev Git Repo . Setup 1. Create Blob Storage Account Create a Azure Blob Storage account under a Resource Group . After it is created, go to the Static website profile page and enable it. Set the Index document name to index.html. Static Website Profile Once this is done, you can see that a $web  blob container is created for us. 2. Create a Project and Git Repo in Azure Dev Ops Point your browser to  https://dev.azure.com/<account-name> , and create a new Project. And a Git Repo will be created automatically. Do the followings git clone  GitHub git clone the new Git Repo that you have created copy will the content in #1 to