DevOps Zone is brought to you in partnership with:
  • submit to reddit
Tom O'connor07/23/14
7177 views
0 replies

Part 1: Getting Started with Ansible

Why Ansible? It’s agentless. Unlike Puppet, Chef, Salt, etc.. Ansible operates only over SSH (or optionally ZeroMQ), so there’s none of that crap PKI that you have to deal with using Puppet. It’s self-documenting, with simple YAML files describing the playbooks and roles. It’s feature-rich.

Lukas Eder07/22/14
2830 views
0 replies

Keeping Things DRY: Method Overloading

A good clean application design requires discipline in keeping things DRY

Gil Zilberfeld07/22/14
3579 views
0 replies

Test Attribute #4 - Accuracy

Accuracy helps us fix problems quickly. But it’s definitely not so easy to come by, because it depends very much on the tested code. However, using the combination of the methods I suggested, and making use of working to test to refactor and simplifications, test accuracy is definitely within reach.

Irena Shaigorodsky07/22/14
3934 views
0 replies

Taming Unexpected Production Issues

You have unexplained production issues from time to time. The business is impacted and the management briefs down your neck while the pieces of the puzzle are collected. There is no way to recreate this on QA set-up. The issue is lurking there for quite a while and becoming more and more frequent.

Carl Dea07/21/14
2494 views
0 replies

FX Playground

FX Playground is a JavaFX-based prototyping tool or live editor that eliminates the step of compiling Java code.

Derek Weeks07/21/14
2779 views
0 replies

Are You Choosing the “Right” Components?

All these and many other characteristics can influence your component choices. And while your decisions will change over time, the more information you have readily available to you when making these choices, the better off you will be.

Topher Marie07/21/14
2433 views
0 replies

2nd DevOps State of the Union – Santa Clara

We were proud to host our 2nd DevOps State of the Union event June 24th. We held it in Santa Clara during Velocity. Wow! What an amazing group and discussion. The goal for the evening was to bring together some of the top thought leaders in DevOps, with the media and analyst community.

Anders Abel07/21/14
3320 views
0 replies

Code Coverage != Functional Coverage

To reach 100% testing coverage is a dream for many teams. The metric used is code coverage for tests, but is that enough? Unfortunately not. Code line coverage is not the same as functional coverage. And it is full functional coverage that really matters in the end.

Benjamin Ball07/20/14
2724 views
0 replies

The Best of the Week (July 11): DevOps Zone

Make sure you didn't miss anything with this list of the Best of the Week in the DevOps Zone (July 11 to July 17). This week's topics include DevOps best practices and culture, Java debugging, code readability, test-driven development, Docker 1.1, and Docker's new ignore features.

Gil Zilberfeld07/19/14
2249 views
0 replies

Test Attribute #3 - Speed

Tests should run quickly. We’re talking hundreds and thousands in a matter of seconds. If they don’t we’ll need to do something about them. Quick feedback is not only an important agile property. It is essential for increasing velocity. If we don’t work at it, the entire safety net of our tests can come crashing down.

Manu Pk07/19/14
5245 views
1 replies

Identifying the Skills Gap for a Software Developer

I had to create a Individual Development Plan (IDP) for me as part of the regular official procedures.

Vijay Narayanan07/19/14
3449 views
0 replies

Tips for Identifying Reusable Candidates from Existing Code

Introduce Factory or Builder instead of repetitive boiler-plate code when constructing key objects. Several benefits: makes it easy to refactor and evolve how underlying objects are stitched together, makes it easy to write more intention revealing code, and very relevant / convenient when writing automated tests.

David Flynn07/18/14
4655 views
0 replies

Introduction to Functional Programming in Java 8 – Part Two

For a preview of what will be covered in a future article, try changing stream() to parallelStream() in the example and see what happens. So that’s the basic operations we’ve covered so far in the blog. We can take a container make a stream, transform items, filter items, peek at them and do something with them.

Jim Bird07/18/14
11432 views
0 replies

Trust instead of Threats

According to Dr. Gary McGraw’s ground breaking work on software security, up to half of security mistakes are made in design rather than in coding. For the last 10 years we’ve been told that we are supposed to do this through threat modeling. What else can we do to include security in application design?

Alexey Kutuzov07/18/14
10533 views
0 replies

Docker using private registry

There is an easy way to define Docker container using Dockerfile. The other way to do it is private Docker registry. I will install now MongoDB in a Docker container w/o Dockerfile

Len DiMaggio07/18/14
827 views
0 replies

If Bad Things Happen to Good Automated Tests - How Red Deer Helps you to Debug Failed Tests

This is the fourth in a series of posts on the new JBoss Red Deer automated test framework. This post describes features in Red Deer that make it easier to debug test failures.

Tomasz Nurkiewicz07/17/14
3866 views
0 replies

Introduction to Writing Custom Collectors in Java 8

Java 8 introduced the concept of collectors. Most of the time we barely use factory methods from Collectors class, e.g. collect(toList()), toSet() or maybe something more fancy like counting() or groupingBy().

Gil Zilberfeld07/17/14
4311 views
0 replies

Test Attribute #2 - Readability

We often forget the most of the value we get from tests come after we’ve written them. Sure, TDD helps design the code, but when everything works for the first time, our tests become the guardians of our code. Once in place, we can change the code, hopefully for the better, knowing that everything still works.

Topher Marie07/17/14
4926 views
0 replies

Are We Thinking About DevOps Wrong? It’s Not About Culture – It’s About Management!

Strong management leads a company and DevOps requires leadership. It takes organizations saying that the increased cost and time right now will be worth it because it will help us move faster in the future. A core part is how to convey to leadership the value of DevOps.

Bhakti Mehta07/16/14
2997 views
0 replies

How JDK 8 Standardizes and Augments Guava Library Functionality

Guava library from Google provided some support for functional programming idioms prior to JDK 8. I have been using Guava for some of my projects

Roohi Agrawala07/16/14
3792 views
0 replies

The Observer Pattern in Java

Due to use of Interfaces, Observable and Observers are loosely coupled. In future if we decide that User should not implement Observer Interface no code change is required in Observable class as it uses Observer Interface and not the concrete class.

John Ferguson Smart07/16/14
1399 views
0 replies

BDD Requirements Management with JBehave, Thucydides and JIRA - Part 2

Thucydides is an open source library designed to make practicing Behaviour Driven Development easier.

Ariya Hidayat07/16/14
2399 views
0 replies

Build Agent: Template vs Provisioning

Except for various corner cases, build agents nowadays often run in a virtualized environment. With today’s technologies, a template-based build agent is not difficult to handle.

Richard Warburton07/15/14
4062 views
0 replies

Java Debuggers and Timeouts

So you've been coding away merrily on a project and everything is going well until a bug appears. You reach into your developer's toolbox and pull out a debugger. It's great - you can set breakpoints, you can interrupt when there's an exception and you can inspect expressions at runtime.

Aleksey Novik07/15/14
27098 views
5 replies

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.