How To Install Docker on Ubuntu 16

Docker is a popular option for “virtual appliances” nowadays. Docker website defines the “Docker” moniker as a software containerization platform that is more flexible than traditional virtual machines since it virtualizes the operating system instead of the hardware. This means that Docker can further isolate the resources by enabling multiple Docker containers running on an operating system. If the operating system itself is running on a virtual machine either via full virtualization (bare metal) or paravirtualization, we will have a good example of IT infrastructure transformation from asset-ownership model into cloud-lease model (my related paper about such transformation can be read here). 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 (869 downloads)

Maven Tutorial for Beginners: Installation and Configuration

maven_windowsMaven installation on Windows is very straightforward. Nonetheless, this post will provide sufficient elaboration to ensure a smooth installation. Following the installation, some configuration and testing tasks may need to be completed prior to creating the first Maven project.

A prerequisite for Maven installation is Java JDK. If you have not installed the Java SDK, you can refer to the installation procedure explained in this post.

The installation and configuration steps are executed in order as follows:

1. Download Maven zip package from the download page

Maven download page URL is
In this post, we will install and configure Maven 3.2.3. It can be anticipated that the installation procedure of the newer version of Maven will be quite similar with the one explained in this article.

2. Extract the zip into an installation directory of preference.

In this article, the directory contained in the extracted zip package is moved into “D:\Devs\DevHome\Maven\Bundle\apache-maven-3.2.3”. There is no strict rule regarding the installation directory. You can put the Maven directory in any directory of your choice. Continue reading

How to Install Java SDK on Windows

java_windows_sA lot of Java-based development tools require Java SDK as the dependency. This post will provide the guide on how to install Java SDK from Oracle on Windows, especially Windows 7. An additional configuration step is also included so that Java will be immediately ready for use by dependent applications.

Java SDK installation on Windows is apparently very straightforward. Oracle already provides a page explaining the Java SDK installation steps. This post focuses on step-by-step guide with necessary snapshot images to deliver better clarity on the installation process.

Java SDK Installation

1. Download Java SDK from the download page

Java SDK download page URL is

Oracle has released Java JDK 8 that provides improvement over the previous Java JDK 7. However, in this post we will choose Java JDK 7 since some popular libraries that we will use later may have not officially supported Java 8. To download JDK 7, click JDK download button from the Java SE 7uXX section and choose the binary version to download (32-bit or 64-bit). Continue reading

Maven Tutorial for Beginners: Quick Introduction

Apache Maven logo

This is the first article of the Maven tutorial series for beginners. For those interested in building their Java projects on top of Maven structure, the articles in the series may help.


For Java developers, Maven is not an alien word. It is much known as a very powerful tool used to build and manage Java projects with varying size and complexities. Aside from being powerful, it is also pervasive, which is exhibited by substantial presence across projects and entities. It is used by individual developers whose projects are being shared in the public repositories to big enterprises with a walled garden protecting the codebase.

This article is targeted to Maven first-timers who are fiddling with Maven on Windows and are in need of guide to installing, configuring, and using Maven for their next Java project. Even though Maven can work across different versions of Windows, the articles and reference images were created in the environment as specified below:

Operating System: Windows 7
Maven version: 3.x.x
Java version: 1.7+

Continue reading