Java 9, Jigsaw, JPMS, and Modules: A Personal Exploration

Java 9 delayed so many times because of Project Jigsaw, and you may be heard a lot of thing about modules, modularity, and other stuff, so, what it’s all about? What the heck is modularization and what do we mean by modularized platform? Java Platform Module System (JPMS)? Is it going to be a revolution in Java ecosystem?
This post is my exploration of the most important thing that happened to the JDK, the Module System. I will explain what modularization is, why you need it, and how you can create your modularized project.

Continue reading

Nonsense Mathematics to Awesome Visualization

Visualization is always a good way to learn things faster and make sense from conceptual things such as algorithms, mathematical formulas or physical phenomena. You may saw a lot of visualizations created by JavaScript and some other tools other than Java. Surely, they were more beautiful in comparison with Applets or Swing-based applications. That was true in the era before JavaFX!
Nowadays, you can create fancier UI with JavaFX more easily. In this post, I am going to show you how to convert an abstract mathematical formula to an awesome JavaFX 3D visualization.

Continue reading

Introduction to JShell

JShell is a new feature introduced in Java 9. JShell is a REPL (Read-Evaluate-Print Loop), a command line tool which allows developer to coding in java without building projects in IDEs or compiling and running their short code which is quite lengthy task, so if you are familiar with interpreted language like Python or other JVM languages like Groovy or Scala the concept of JShell is familiar to you.

In this article I want to show you how to use JShell and show you simple web scraping using JSOUP with JShell.

Continue reading

Introduction to Evolutionary Algorithm

Evolutionary algorithm such as Genetic algorithms is an amazing and powerful algorithms that you can use them to solve any problem that classic algorithms can not solve them. These problems are quite complex and in such cases,  simplicity and robustness of Genetic Algorithms will be quite handy.

I don’t want to write a complete tutorial over Genetic algorithms or Evolutionary algorithms in general. I want to show you my two projects that you can see their code on my github page and see the power of Genetic algorithms.

Continue reading