Category Archives: Programming languages

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

What Is Your Java IDE?

After a long break in posting in this technology blog, I will start sharing things with you again. This time, I’ll start with a simple topic: Java IDE. Following this post, I hope I can share lots more useful and exciting stuff for you.

I have been a long fan of Eclipse IDE. For some Java developers, Eclipse can be a religion that is taken for granted. There are obviously some reasons behind this. Eclipse is free thus saving the souls of those who really count each penny they spend for their toys. Additionally, its richness in third party plugins, which is an equivalent expression for broad range of support from software/API vendors, oftentimes make Eclipse the first choice of Java IDE.

Nevertheless, you may agree with me that one aspect Eclipse is lacking is the usability. When talking about usability, I don’t necessarily mean the interface is horrible. Eclipse is intuitive enough and it can satisfy most of your development needs, until one point where you think you should find another alternative. I have found out that Eclipse can be cumbersome when it is used for multi-module big Java projects. To be more specific, big, multi-module Java projects that use Maven for the build management instead of ant do not really play satisfyingly well under Eclipse.

Recently, I started using IntelliJ IDEA, an IDE from JetBrains. I don’t want to excessively praise this IDE but there are some rooms where this IDE rocks and beats Eclipse, severely and predominantly. In Eclipse for example, it is not straightforward to create a hierarchical multi-module POM-based projects. In contrast, multi-module hierarchical POM-based projects are easy to create in IntelliJ IDEA. IntelliJ IDEA’s intellisense, or auto-complete feature, is also awesome. The breadth of languages and XML structure it supports is unexpected. Coding Groovy in Eclipse can be non-intuitive but IntelliJ IDEA provides seamless intellisense support for Groovy. Even the POM file structure can easily created, modified, and analyzed with the builtin intellisense. The presence of this feature will undoubtedly increase your productivity. There are some other nice features but I will let you find them by trying this IDE by yourself if you haven’t got your hands dirty with it before.

Now, back to the original question. What is your Java IDE? And let’s make this question more interesting: What is the best Java IDE that you ever knew?

Sample PHP Application: A Simple PHP Command Line-based File Generator

PHP is a great scripting language to build web applications. Reckoning my first exposure to the language, I have been tinkering with PHP for some years by now. Despite the sluggish improvement and development towards a more architecturally robust, more feature-rich, and less quick-and-dirty programming language recently, I still love coding bytes in PHP. Some people may think of PHP as the language for programming the web quickly. Write some HTML, embed some javascript, add some CSS, put some PHP code, and voila… a dynamic web page is created. I won’t praise how good PHP is for developing a web application. Several companies may have done that. Name Facebook and Yahoo as examples. With some optimization to native PHP codes, both companies have shown how to use the language to cater to millions of users and run a serious business.

In this post, I’d like to highlight another feature of PHP, the command line interface (CLI). In my personal experience, PHP CLI can be an alternative to some administrative tasks. Linux users may have been familiar with shell scripting for carrying out system management and configuration tasks. So, why must PHP? The answer is portability. The same PHP code should work not only on Linux but also on Windows. Some critics may argue that other languages may also have answer for portability. I concur to that criticism while at the same time emphasizing PHP as another viable option.
Continue reading

Quick Tip: How to Install and Configure PHP in Fedora Linux

Previously, I have discussed about how to install MySQL on Fedora Linux. In this post, I would like to elaborate PHP installation on Fedora. Even though the installation is simple by nature, I would like to provide some notes to help you troubleshoot some post-installation problems that may occur.

As usual, I will provide the screenshots of the installation along with the commands invoked on the terminal. For the environment, some important settings are written below:
OS : Fedora 13 64-bit
Web server : Apache HTTP Server
PHP version : PHP 5.3.2
Constraints : yum is installed, commands invoked in root shell, Apache is already installed and running

Note: Apache is installed by default in Fedora. You only need to configure and verify that the server is running. How to configure Apache is explained in the online documentation. If you want the server to be public, i.e. accessible from other computers in the network, you should not firewall the HTTP port, which is usually port 80. Also, if you enable selinux, you also need to properly set the flag of some security parameters related to http. I will explain about selinux and http in another post.

Now, let’s move to the installation. Basic installation steps are as follows:
1. Install PHP via yum

root# yum install php

Continue reading