Modularity is not a new concept; it has been around for a long time. The term modularity was first coined in the late 1960s by Professor Edsger W. Dijkstra in one of his manuscripts. Unfortunately, the Java platform itself does not have a module system available out of the box. Project Jigsaw is in the works, but it isn???t available for production usage yet. Because we needed a modularity solution now, OSGi was chosen, which offers the benefits of having a dynamic modular runtime on top of the Java Virtual Machine (JVM). OSGi has been a proven modularity solution for more than 10 years.
Wix engineering blog has a great post about how using TDD helps migrating an internal project to be Open Source.
"We planned to open source PETRI from day one, but in the interest of development velocity, we developed it as an internal project with our own internal dependencies. Yet we knew that in order to finally break away from those internal dependencies we would need a development methodology that would enable us to make those big changes while still being able to build quickly and confidently. That methodology is Test-Driven Development (TDD), practiced by many teams at Wix.
Given that almost every service at Wix would be using this project, we also knew that we would need to do this by the book. Thus we had the amazing opportunity to write a greenfield project, completely TDD-ed from the get-go."
Tony Hoare, inventor of the null reference, apologetically called it ???the billion dollar mistake???.
The problem with null is not that it was invented back in 1965, but that we are still struggling with it 50 years later. I recently came across this article on Voxxed: Embracing the Void: 6 Refined Tricks for Dealing with Nulls in Java. It gives a nice rundown of strategies around the null reference. Sadly, it discourages the use of Java 8???s Optional. In this post I will explain why and how you should use Optional???
Originally written by St??phane Nicoll on the Spring blog
Application events are available since the very beginning of the Spring framework as a mean for loosely coupled components to exchange information. One of the most well known usage of application events is the following:
Application events are available since the...
HTML6 notion, despite the fact that the HTML5 specification was planned to fully adop
HTML6 notion, despite the fact that the HTML5 specification was planned to fully adopt and achieve the broadest possible compatibility in 2014, now began to appear ideas about how this specification of the next generation looks like ???...
This post first started as I was discussing my post ???You Aren???t Doing Scrum If ?????? with a friend who had read the post and was worried that I might not fit in an organization that wasn???t doing all of Scrum. I???ve since had other conversations and as I???ve reflected on the topic, I still stand by my original post, because there are some fundamental properties of Scrum that you...
Mobile by Rob LauerWhen you develop an Android app, your users will justifiably be concerned if your app requests access to a myriad of device features and personal information. You are risking decreased app installations and increased suspicions of your app???s motives if you ask your users for personal data, contacts, access to their phone, SMS messages, and so on. In this article I hope to...