Category: Java

Implementing An Internal Software Development Project In A Technology Consulting Firm (aka EATING YOUR OWN DOGFOOD!)

  dog-610069_1920

 Part One

 “The task of the software development team is to engineer the illusion of simplicity” – Grady Booch

At Pinnacle, we are blessed with a population of senior technologists well versed in a multitude of modern development languages, approaches, frameworks, tools, apps and processes. Each of these elements are honed daily in the various customer environments we are actively engaged in. From time to time, we ask members of the organization to contribute to internal efforts that make life easier for all parties. We are currently in the midst of one of those times.

Like any project we perform for customers, we work with the team to understand the requirement and disseminate information and access pertinent to what we are looking to achieve. The next step is where it gets interesting. We tend to have options that more traditional businesses may not in choosing the technologies in which to construct our solution. We have partnerships with certain technology providers that minimizes our investment costs. And we have strong opinions on the most viable technology stack to use to solve this problem. In a recent LinkedIn post (http://tinyurl.com/heflt83), I wrote that one reason technology has gotten harder is due to Continue reading

Continuous Integration: Jenkins

What is Jenkins?

Jenkins is the backbone of a Continuous Integration (CI) ecosystem. It allows you to manage your projects and configure how they are built. It can be used with any type of build tools, but it really shines for Maven projects because of the extra functionality it offers. There are robust 3rd party plugins that allow you to do pretty much anything you’d want to do with your build.

In this post, we’re going to focus on installing Jenkins and creating a basic job for the addrbook project we built in an earlier post. In future posts we’ll leverage the Jenkins plugins for more advanced functionality. This post assumes you already have a web app container (eg, Tomcat) and git installed.
Continue reading

Spring Boot

The sessions at this year’s SpringOne conference covered a wide range of topics, everything from developer tooling to testing to reactive programming to core Spring. However, permeating the keynote and nearly all sessions was Spring Boot, Pivotal’s newest addition to the Spring ecosystem. In fact, one session was titled ‘Building Bootiful Web Applications’.

Simplifying the pom.xml

Spring Boot is aimed at simplifying Spring projects, especially the configuration. The simplification has several layers. The first layer is the pom.xml. To create a Spring Boot project (or migrate an existing one), you first need to specify the Spring Boot parent pom:

<parent>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-parent</artifactid>
    <version>1.1.6</version>
</parent>

The parent pom has harmonized versions of various dependencies, including non-Spring libraries such as Hibernate. Continue reading