Angular 1 vs Angular 2 - An In-Depth Comparison

Updated to Angular 2 Release Candidate The main functionality and the core documentation of Angular 2 are both already available. Let's gather here what is so far known about the design goals and features of Angular 2, and how they compare to Angular 1: Mains goals of Angular 2 Simpler…

A complete toolchain for AngularJs - Gulp, Browserify, Sass

Starting an AngularJs project also means choosing a whole toolchain that goes along with Angular. In this blog post we will propose a set of tools that a new Angular project will likely need, and present a simple Gulp build that provides those features. Let's go over the following topics…

Introduction to AngularJs Form Validation

AngularJs is often seen as a viable solution for building full scale single page web applications. In this post we will go over how Angular is particularly well suited for building form-intensive large scale apps due it's inumerous form validation features (example). Angular was initially a tool for making forms…

Javascript debugging tips using the Chrome Dev Tools, deb.js and more

In this blog post we will go over some useful tips and tricks for debugging client-side Javascript using the Chrome Dev Tools. We will focus on situations where we actually don't know where to put the breakpoint in the first place. Let's go over the following topics: Find out what…

Really Understanding Javascript Closures

This post will explain in a simple way how Javascript Closures work. We will go over these topics and frequently asked questions: What is a Javascript Closure What is the reason behind the name 'Closure' Actually viewing closures in a debugger how to reason about closures while coding the most…

Web App Architecture - the Spring MVC - AngularJs stack

Spring MVC and AngularJs together make for a really productive and appealing frontend development stack for building form-intensive web applications. In this blog post we will see how a form-intensive web app can be built using these technologies, and compare such approach with other available options. A fully functional and…

Solving ORM - Keep the O, Drop the R, no need for the M

ORM has a simple, production-ready solution hiding in plain sight in the Java world. Let’s go through it in this post, alongside with the following topics: ORM / Hibernate in 2014 - the word on the street ORM is still the Vietnam of Computer Science ORM has 2 main goals…

Jar Hell made Easy - Demystifying the classpath with jHades

Some of the hardest problems a Java Developer will ever have to face are classpath errors: ClassNotFoundException, NoClassDefFoundError, Jar Hell, Xerces Hell and company. In this post we will go through the root causes of these problems, and see how a minimal tool (JHades) can help solving them quickly. We…

The Java Origins of Angular JS: Angular vs JSF vs GWT

A superheroic Javascript framework needs a good origin story. Let's try to patch it together, while going over the use of Angular JS in the enterprise Java world and the Angular take on MVC. This post will go over the following topics, and end with an example: The Java Origins…

Javascript for Java Developers

This post will go over the Javascript language from the point of view of a Java developer, focusing on the differences between the two languages and the frequent pain points. We will go over the following: Objects Only, No Classes Functions are just Values The 'this' Keyword Classic vs Prototypal…

How does Spring @Transactional Really Work?

In this post we will do a deep dive into Spring transaction management. We will go over on how does @Transactional really works under the hood. Other upcoming posts will include: how to use features like propagation and isolation what are the main pitfalls and how to avoid them JPA…