Non-Presentational Components in Ember

Components are one of the most useful and powerful features in Ember, as well as other Javascript frameworks like React. In trying to solve a problem recently in the app I work on, I came across another way of using them which is as a “non-presentational component”, also sometimes referred to as “container components.” They’re a little different from the way you would normally use a component, since they don’t have a view, but are incredibly useful in the right situation.

Continue reading »

The Busy World of Ember Engines

Ember engines introduces a powerful way to organize your application concerns, however it can be a little confusing if you aren’t familiar with its core concepts. Using an example of an imaginary little town I will try to cover the basic concepts in how engines, addons and shared dependencies relate to each other in ember.

Continue reading »

Ember Life without jQuery

Starting with Ember 3, the steps to remove jQuery as a dependency have begun. After doing some transition work with a few of our larger components, I’ve noticed a few things that might come in handy for anyone else updating their work. All of these should work in 2.18 and will help smooth final transitions you may make in 3.x.

Continue reading »

JSON Logging for Spring Boot

Does your Spring Boot app output detailed JSON to its logs yet?

With a few minor configuration changes, and a fresh perspective on your logging practices, your Spring Boot application can easily benefit from the latest logging analysis tools.

Continue reading »

The art of the commit message and PR description

This is a pretty simple topic, but one that I find really important. It’s also something I’m pretty proud of that we do on my team… take the time to write good commit messages. Additionally, we always try to create pull requests with descriptions that make it easy for any developer to know exactly what was done and why. This makes it easy for a new developer contributing to the project or even a seasoned developer changing old code to understand why things were done previously.

Continue reading »