DevOps Zone is brought to you in partnership with:
  • submit to reddit
Mike Bushong02/05/14
8294 views
2 replies

Open Source as the Future of IT

Open source is playing an increasingly important role in IT infrastructure generally. But is open source a natural evolutionary path for all IT disciplines, or are there certain characteristics that make some areas more ripe for open source than others?

Knut W. Hansson02/03/14
7859 views
2 replies

Code Puzzler: Favorite Seats

Given an array of n rows numbered 0 to n-1, each of m seats 0 to m-1, where the cells have values True (meaning the seat is available) or False (meaning the seat is taken). A customer states that his favorite seat is at row x and seat y on that row.

Jakub Holý02/03/14
8918 views
0 replies

A Secret Weapon Against Technical Debt

Technical debt is not the only monster we have to fight – it has a hidden evil twin, as pointed out by Niklas Björnerstedt: Competence Debt. There is an often neglected tool at our fingertips that might help us fight competence debt. Its name is – behold – JavaDoc

Gerard Davison02/03/14
5517 views
0 replies

Post-Hoc Tracing Using a Debugger

One nice little feature of most debuggers that I have been exercising recently is the ability to log information on a breakpoint. This can be a really useful way to understand code without having to modify it or involve byte code modification, and in this article, you'll learn how to do it.

Alexander Helf02/01/14
5050 views
0 replies

Review: Getting Started with Apache Maven

If you want to learn something about Apache Maven, why not try this new video tutorial? After watching the videos, the author thinks it looks like a good starting point. You may find other tutorials on YouTube, but in his opinion, it is worth checking out this course, because it handles all major topics.

Sharone Zitzman01/31/14
5152 views
0 replies

Intro to Puppet, Installing your First MySQL Service in 5 Minutes

Puppet, a popular configuration management tool, is used by many IT companies to help facilitate and automate the setup of environments. This is a hands on guide for how to quickly install Puppet a MySQL instance in just a couple of minutes.

Zac Gery01/30/14
6948 views
0 replies

Why Am I Developing This?!?

Let's set the scene: The project has been humming along, and a new request comes in for a minor change. It's completed in quick order, QA signs off, but the customers are frustrated and confused. To find clarity, stop focusing on what did happen and dig a little deeper into what didn't happen.

Tim Eisenhauer01/29/14
3446 views
0 replies

Problems with Free and Open Source Collaboration Platforms

Recently, one of my government clients decided to switch their public facing ASP.NET to Drupal (an open source solution), and they had an embarrassing hacking scenario. There are a number of disadvantages to open source systems that you should be aware of before making the switch.

Vishal Jain01/29/14
1260 views
0 replies

Need More Scouts for the Old Code

The Boy Scouts have a rule: “Always leave the campground cleaner than you found it.” What if we followed a similar rule in our code: “Always check a module in cleaner than when you checked it out.”

Jalpesh Vadgama01/23/14
13618 views
0 replies

Why Continuous Integration is Your Friend

In this post we are going to learn the benefits of Continuous Integration in Software Development. Let’s understand what continuous integration is first and then we will discuss the benefits we are having.

George Dinwiddie01/22/14
7766 views
0 replies

Long-Range Planning with User Stories

I frequently hear or read people suggesting using User Stories for relatively long-range planning. Sometimes they mean something as short as a release in a few months. Sometimes they’re talking about multiple releases over a year or two. What are the implications for doing this?

Istvan Szegedi01/21/14
7611 views
0 replies

NuoDB 2.0: A Distributed Database

NuoDB 2.0 was recently released and it delivers some major new geo-distributed management features, along with database automation and SQL and Java stored procedures. The geo-distribution capabilities enable users to distribute a single logical database across multiple cloud regions or data centers.

Paul Hammant01/21/14
10369 views
0 replies

Google's vs Facebook's Trunk-Based Development

I’ve been pushing this branching model for something like 14 years now. It’s nice to see Facebook say a little more about their Trunk Based Development. Of course they’re not doing it because they read anything I wrote, as the practice isn’t mine, it’s been hanging around in the industry for many years, but always as bridesmaid so to speak.

Chase Seibert01/21/14
2631 views
0 replies

Python Script to Delete Merged Git Branches

If you’re like me, you may have 30 branches at any given time. This can make viewing all the branches unwieldy. Once I week or so, I would go on a branch deletion spree by manually copying and pasting multiple branch names into a git branch -D statement.

Ariya Hidayat01/20/14
5353 views
0 replies

A Maturity Model for Build Automation

How does your engineering organization build and deliver products to its customers? Similar to the well-known capability maturity model, the maturity level of a build automation system falls into one of the following: chaotic, repeatable, defined, managed, or optimized. Let’s take a look at the differences in these levels.

Slobodan Pavkov01/17/14
9544 views
0 replies

Introducing the Unit Testing Context Pattern

Another pattern? Well yes. I write unit and integration tests almost every day and along the way I learned all kinds of different tricks and gotchas on how to be more productive and how to write less fragile tests. But one of the patterns that emerged I never saw in the code of other people so I decided to share it here since I find it very useful. I call it Testing ContextPattern and – unlike it’s name – its very simple.

Zac Gery01/16/14
9940 views
0 replies

The Road to Missed Deadlines is Paved with Good Intentions

People at their core are loving, nurturing beings. They want to help others and make them feel wanted. In the world of business, keeping these needs in perspective can be challenging.

Robert Greathouse01/16/14
9457 views
1 replies

Legacy is a Four-Letter Word

The term “legacy” has mixed meanings in software development and I am personally trying to remove it from my vocabulary. It often has a bad connotation. Many developers use it to describe code that they did not write and do not like.

Tom O'connor01/15/14
6001 views
0 replies

Finally, a place for IT "shopping" questions.

One thing that's not allowed anywhere (seemingly) on the StackExchange network is the so-called Shopping Question. I was talking about this in ServerFault Chat recently, and I thought it was about time to have a go at a spin-off site, just for shopping questions. Here it is: TechShoppingAndInfo

Alan Hohn01/15/14
3942 views
0 replies

Concurrent Random in Java SE 7

I was reading through Oracle’s release notes on Java SE 7 and noticed that they include a new facility for concurrent random numbers.

Bozhidar Bozhanov01/14/14
10869 views
0 replies

I Don't Like Scala

Yes, it is my opinion, and yes, it might seem like a hate-post. But I’ll try to address the issues I have with Scala and its surroundings.

Edmund Kirwan01/14/14
3886 views
0 replies

Coupling and Cohesion: Failed Concepts.

Loose coupling and high cohesion. Taken individually, both concepts appear sound; taken together, however, they confess worrying inconsistency

Jim Bird01/13/14
8963 views
0 replies

Developers working in Production. Of course! Maybe, sometimes. What, are you nuts?

One of the basic ideas in DevOps is that developers and operations should share responsibility for designing systems, for implementing them and keeping them running. If you ask whether developers should have access to production you’ll find that people fall into one of 3 camps: (1) Of course! (2) Maybe, sometimes (3) What, are you nuts?

Barton George01/13/14
6613 views
0 replies

DevOps Days NYC: When DevOps Goes Wrong

In this presentation, which is embedded below, Mike talks about a devops project he was on in Australia. He and his team were brought in to a large trading firm to implement continuous delivery and integration, they got the code right but made a few critical mistakes. Listen to Mike as he tells his cautionary tale.

Tomasz Nurkiewicz01/10/14
2937 views
0 replies

Three Flavours of Request-Response Pattern in Akka

Imagine a simple Akka actor system consisting of two parties: MonitoringActor and NetworkActor.