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 http://www.oracle.com/technetwork/java/javase/downloads/index.html.

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.

Preface

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

Why Events Are a Bad Idea

With the always increasing needs for more responsive and better performing application, modern applications these mostly adopt concurrent computing model. In this model, a task is divided or split into multiple parts and then passed to a number of processing workers that will work on each part and then coordinate to help build the whole solution to the problem. Another case is when a stack of tasks or problems is forwarded to a number of processing workers having identical processing routine so that stack can be emptied faster. The application which applies the concurrent computing model is called concurrent application.

Two popular approaches have been widely used to address computation in a concurrent application: thread-based approach and event-based approach. Nowadays, event-based approach is a more likely to be found in the implementation of a concurrent application. Nonetheless, this does not mean that thread-based model never gains traction.

This article summarizes the paper with the same title, which offers thought-provoking argumentations on the merit of thread-based approach over event-based approach in developing a highly concurrent application. What’s interesting from the paper is not only does it provide conceptual and theoretical argumentation, it also shows some empirical results in the defense of the provoking statements.

You can download the presentation from the link below:

Why Events Are a Bad Idea (3240 downloads )

The Enterprise Service Bus: Making Service-Oriented Architecture Real

Enterprise solutions are often complex and heterogeneous. It is a perfect analogy of a system of systems. In this article, I provide a presentation delivered about Enterprise Service Bus (ESB). The presentation is based on a paper of the identical title, authored by M. T. Schmidt et al.

The presentation summarizes the key points in the paper. It highlights the definition and concept of the ESB and the common cases where it can be applied to a certain problem domain. Later it discusses several common mediation and usage patterns that can be chosen as the most proper strategy in resolving the system integration problem.

By nature, this presentation is targeted to computer science researchers. However, software or system engineers who want to get a better grasp of the ESB concept may also find the presentation and the original paper useful.

You can download the presentation from the link below:

The Enterprise Service Bus: Making Service-Oriented Architecture Real (5605 downloads )

Survey of Publish Subscribe Event Systems

This presentation contains the summary of the paper of the same title. The paper primarily discusses about existing publish subscribe systems and how each of them differs from the rest.

A computer science researcher in search of a comprehensive summary of publish-subscribe system may find the paper (and this summary) useful. Additionally, the paper can provide some conceptual information and knowledge for software engineers implementing or about to implement a event-based pubsub system.

You can download the presentation from the link below:

Survey of Publish Subsribe Event Systems (2785 downloads )