Category Archives: Technical Notes

All about technical notes

SSL vs TLS Protocol Differences and Comparisons

As we move the communication and various aspects of life online, ensuring the secure communication through the internet has only grown in importance. It is essential, as for example, that the financial transactions executed on the web and apps are secure and untampered. Security of the networked communication and the Internet in general ensures the confidentiality, integrity, and availability of data.

To achieve such security, security protocols for the Internet have been developed and evolved as internet becomes more pervasive and connects more people, applications, and systems. One of the security protocols is Secure Socket Layer (SSL), which is often used to refer to Transport Layer Security (TLS). The SSL/TLS protocol specifies a set of rules for establishing secure communication between two endpoints, a client and a server, over non secure network.
Continue reading

List of NVIDIA Desktop Graphics Card Models for Building Deep Learning AI System

Last update: 16 November 2023

If you are doing deep learning AI research and/or development with GPUs, big chance you will be using graphics card from NVIDIA to perform the deep learning tasks. A vantage point with GPU computing is related with the fact that the graphics card occupies the PCI / PCIe slot. From the frugality point of view, it may be a brilliant idea to scavenge unused graphics cards from the fading PC world and line them up on another unused desktop motherboard to create a somewhat powerful compute node for AI tasks. Maybe not.

With the increasing popularity of container-based deployment, a system architect may consider creating several containers with each running different AI tasks. This means that that the underlying GPU resources should then be shared among the containers. NVIDIA provides a utility called NVIDIA Docker or nvidia-docker2 that enables the containerization of a GPU-accelerated machine. As the name suggests, the utility targets Docker container type. Continue reading

Xpath Basics: Introduction to XPath with an Example Java Project

xpathXPath is a W3C recommendation used to search and find parts of an XML document through a path expression. The elements or attributes that match the path expression will be returned for further processing by the invoking command, module, actor, or component.

In this post, I will explain about the basic concept of XPath via presentation slides. The presentation starts with a revisit to some of the XML key concepts. Subsequently, it shows sufficient elaboration of the basic concept of XPath. It concisely describes the key features of XPath that are worth knowing and practically useful especially when searching inside XML files.

The final part of the presentation consists of a sample project accompanied with some screenshots provided for readers to experiment with. In an upcoming post, I will show how the sample project can be converted into a Maven project for more convenient use and distribution.

You can download the slides from the following URL:

Xpath Basics (1808 downloads)

Quick Guide to Detecting Phishing and Avoiding Being A Victim

Having talked about spamming, in this post, I would like to shortly discuss about phishing, a technique for identity theft, which in my personal experience, has become more rampant these days.

If it is the first time for you to read this fancy term, phishing is an attempt to steal somebody else’s sensitive information such as username, password, credit card details, and other personal credentials usually done by sending an email containing a false claim to the target. The content can be a threat, warning, and other form of falsified truth carefully crafted to encourage the target to submit his personal credentials. As you may have predicted, phishing was derived from “fishing”. The “fisher” is the person who wants to steal the information and the target is the “fish”. The false claim is obviously the “bait” used to attract and hook the “fish”.

Identity theft is disadvantageous and can sometimes become disastrous to the victim. Let us take a case of a phishing attempt from a sender who falsely claims as your email account provider. The message contains warning to verify your email account by supplying your user account id and password. If you inadvertently submitted the requested information to this site, you might have never imagined how creative the phisher is in exploiting this private information they stole from you.
Continue reading

VMWare Customer Day 2010 Korea: Cloud Computing Adoption in Enterprises and vSphere 4.1

On Friday, September 10th, I attended VMWare Customer Day 2010 Korea, which was held at COEX Intercontinental Hotel, Seoul. Even though it has been a while past the event, I would like to share some notes worth sharing, combined with my personal thought about substantial content found in the talks I listened to during the event.

As the event title suggests, the talks mostly covered introductory concept about cloud computing and virtualization as well as some promotional materials about VMWare products. This is coherent with the majority of the audience who came from the enterprises: IT staffs, ISV representatives, and company delegates. Three sessions were arranged for the whole event. The first session was a talk from Mike Sumner, the VMWare Asia Pacific SE Director. He talked about customer journey to IT as a service by riding the cloud and harnessing virtualization. Second talk about VMWare case studies was presented by Lee Mun-hyong, the Director of Channel and Alliance, VMWare Korea. The last session was delivered by Lee-Hyo, the head of VMWare Korea. He explained about vSphere 4.1 especially the new features in the release. The second and third session were presented in Korean so I only grabbed the general understanding and did not really grasp the details.

In his presentation, Mike talked about cloud computing as an emerging trend in the enterprise. He also explained key drivers and phases toward its adoption in the enterprises and an era of IT as a service powered by the cloud. He started with listing several IT challenges in the enterprise environment. The challenges he mentioned include the necessity to deliver more business value, the ability to move faster and stay ahead of the competitors, the competency to maintain secure and compliant environment, and the capability of maintaining a stable system. Legacy IT business model relies on infrastructure ownership and dedicated IT force. With the introduction of the cloud in the enterprise, CIO may consider the transformation from a pay-in-advanced system into a cloud-based, pay-as-you-go system.
Continue reading