![Nicolai Parlog](https://uploads.sitepoint.com/wp-content/uploads/2016/04/1461823099nipa_profil-96x96.jpg)
Nicolai is a thirty year old boy, as the narrator would put it, who has found his passion in software development. He constantly reads, thinks, and writes about it, and codes for a living as well as for fun. Nicolai is the former editor of SitePoint's Java channel, writes The Java 9 Module System with Manning, blogs about software development on codefx.org, and is a long-tail contributor to several open source projects. You can hire him for all kinds of things.
Nicolai's articles
![Where’s the Java?](https://uploads.sitepoint.com/wp-content/uploads/2017/04/1493387491goodbye-java-300x163.jpg)
SitePoint is of course focused on web technologies like HTML, CSS, JavaScript, or PHP. So what is the avid Java developer to do? Where are you gonna get your news?
![Top Resources to Get Started with Java 9](https://uploads.sitepoint.com/wp-content/uploads/2017/03/1490979156java-9-resources-300x200.jpg)
All about Java 9: talks, articles, sites, blogs, courses, and books. If you want to get into Java 9, these resources are going to get you started.
![How Project Amber Will Revolutionize Java](https://uploads.sitepoint.com/wp-content/uploads/2017/03/1489747693project-amber-300x193.jpg)
Project Amber is the roof under which several productivity-oriented Java language JEPs like more type inference and pattern matching are developed.
![Git Better! Learn Aliases, Settings, Tools, Background](https://uploads.sitepoint.com/wp-content/uploads/2017/03/1488553546git-better-300x176.jpg)
Chances are you're using Git - a lot. Here's how to use it better! Aliases, settings, tools, and a little background about usability and documentation.
![Understanding Java’s Reflection API in Five Minutes](https://uploads.sitepoint.com/wp-content/uploads/2017/02/1488222239eagle-reflection-300x159.jpg)
Java's reflection API allows the inspection and invocation of types, methods, fields, annotations, etc. without creating compile time dependencies.
![How Conferences Feed the Hype Cycle](https://uploads.sitepoint.com/wp-content/uploads/2017/02/1487349694conference-merry-go-round-300x200.jpg)
Lots of great conferences have lots of great speakers. But does the lack of everyday developers speaking about their experiences feed the hype cycle?
![Java Module System Hands-On Guide](https://uploads.sitepoint.com/wp-content/uploads/2017/02/1486041005jigsaw-demo-hands-on-300x168.jpg)
Read Java Module System Hands-On Guide and learn with SitePoint. Our web development and design tutorials, courses, and books will teach you HTML, CSS, JavaScript, PHP, Python, and more.
![Java’s Switch Statement in Three Minutes](https://uploads.sitepoint.com/wp-content/uploads/2017/01/1485272922java-switch-300x165.jpg)
Java's switch statement allows easy selection of execution paths based on a variable's value. Switches can replace if-else-if chains.
![Reflection vs Encapsulation – Stand Off in the Java Module System](https://uploads.sitepoint.com/wp-content/uploads/2016/12/1480940846reflection-vs-encapsulation-module-system-300x150.jpg)
Reflection wants to break into all code; encapsulation wants to give modules a safe space. How can this stand off in the Java module system be resolved?
![What Future Java Might Look Like](https://uploads.sitepoint.com/wp-content/uploads/2016/11/1479166137binocular-future-of-java-300x225.jpg)
Java's future is full of cool advances: data classes, value types, generics over primitives, pattern matching, etc. Let's peek into Java's future!
![Inside Java 9 – Performance, Compiler, and More](https://uploads.sitepoint.com/wp-content/uploads/2016/11/1478525717car-repair-inside-java-9-performance-compiler-300x175.jpg)
Java 9 has a lot to offer besides modularity: new language features and a lot of new or improved APIs, GNU-style command options, multi-release JARs, improved logging, and more.
![Inside Java 9 – Version Schema, Multi-Release JARs, and More](https://uploads.sitepoint.com/wp-content/uploads/2016/11/1478122011java-9-under-the-hood-300x199.jpg)
Java 9 brings more than just modules: multi-release JARs, UTF-8 property files, Unicode 8.0, reserved stack space ... a lot goes on inside Java 9.
![JUnit 5 State Of The Union](https://uploads.sitepoint.com/wp-content/uploads/2016/10/1476998648jupiter-300x273.jpg)
Summarizing where JUnit 5 is currently standing, discussing everything from API, extension model, and architecture to history, tool support, and open issues
![JavaOne 2016 – Nucleus](https://uploads.sitepoint.com/wp-content/uploads/2016/10/1475786167nucleus-300x192.jpg)
A summary of the best JavaOne 2016 talks that discussed Java 8, Java 9 and Project Jigsaw, as well as Java EE 8.
![The Ultimate Guide to Java 9](https://uploads.sitepoint.com/wp-content/uploads/2016/08/1472576988Java_9_Shibuya_Night-300x200.jpg)
Java 9 is coming! Besides Jigsaw it brings new language features and many new and improved APIs. This is the ultimate guide to all that's new in Java 9.
![JVMLS 2016: A Recap of Java Virtual Machine Language Summit](https://uploads.sitepoint.com/wp-content/uploads/2016/08/1470843594machine-300x200.jpg)
Last week was the Java Virtual Machine Language Summit (JVMLS) where renown experts present the newest developments of the JVM.
![Self Types with Java’s Generics](https://uploads.sitepoint.com/wp-content/uploads/2016/08/1470115489java-self-types-300x200.jpg)
Self types let a class reference its own type. Java doesn't have them, but there is a trick.
![How to Implement Java’s hashCode Correctly](https://uploads.sitepoint.com/wp-content/uploads/2016/05/1471601959math-300x200.jpg)
Implementing Java's hashCode is a fundamental task for any Java developer, but the devil is in the details. Nicolai Parlog explains how to do it correctly.
![How to Implement Java’s equals Method Correctly](https://uploads.sitepoint.com/wp-content/uploads/2016/05/1471601289equality-300x200.jpg)
Implementing equals and hashCode is a fundamental task for any Java developer. Nicolai Parlog explains how to do so correctly.