DevOps Zone is brought to you in partnership with:
  • submit to reddit
Andrzej Krzywda05/07/14
4525 views
0 replies

TDD and Rails - what makes a good Unit?

There is an ongoing discussion about TDD and Rails. It was recently heated by some some of the DHH statements in his RailsConf keynote and in the blog post: http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html One aspect of...

Juri Strumpflohner05/07/14
10938 views
0 replies

See, always told you: testing is just a waste of time

About the flamed debate around the death of TDD and why it isn't an excuse for not doing automated testing

Roger Hughes05/07/14
3857 views
0 replies

Tracking Exceptions - Part 6 - Building an Executable Jar

Having written the code and the tests, and being fairly certain it’ll work the next and final step is to package the whole thing up and deploy it to a production machine.

Alec Noller05/07/14
15394 views
0 replies

Dev of the Week: Dustin Marx

Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Dustin Marx, software developer, writer, and presenter.

Topher Marie05/06/14
3788 views
0 replies

Practical DevOps Advice Interview with Gene Kim

Entrepreneur, researcher, and author, Gene Kim, took some time to sit down with Rajat Bhargava, CEO of JumpCloud, to discuss different aspects of high-performing technology organizations he has been studying for over a decade.

Rob Allen05/06/14
2964 views
0 replies

Writing to Vagrant Synced Folders

I had a problem writing to the cache directory in my vagrant project due to file permissions. Fortunately Jeremy Kendall has already solved this problem in his Vagrant Synced Folders Permissions article.

Pierre-yves Saumont05/05/14
17422 views
0 replies

What's Wrong in Java 8, Part II: Functions & Primitives

Tony Hoare called the invention of the null reference the “billion dollars mistake”. May be the use of primitives in Java could be called the million dollars mistake.

Mitch Pronschinske05/05/14
15728 views
0 replies

Infrastructure as Code: When Automation isn’t Enough

The best piece of advice to about using Infrastructure as Code is to stay connected to the vast community of innovative developers. If your systems remain open to the rapid changes in that community, you’ll be able to share and benefit from the cutting-edge ideas that will make your organization successful.

Reza Rahman05/05/14
2395 views
2 replies

EJB 3 in Action: A Personal Journey

I am very proud to say the second edition of EJB 3 in Action is now published. In addition to covering EJB 3.2, we've also covered JPA 2.1, CDI 1.1, JAX-RS and WebSocket. The goal is to try to cover as much of the Java EE 7 "backend" technologies as possible.

Benjamin Ball05/04/14
1727 views
0 replies

The Best of the Week (Apr. 25): DevOps Zone

Make sure you didn't miss anything with this list of the Best of the Week in the DevOps Zone (Apr. 25 to May 1). This week's topic includes test-driven development, continuous delivery, scaling self-service-as-a-service, development methodologies, and Jersey/Jax RS streaming JSON.

Jakub Holý05/04/14
4477 views
0 replies

Clojure: How To Prevent "Expected Map, Got Vector" And Similar Errors

What my Clojure code is doing most of the time is transforming data. Yet I cannot see the shape of data being transformed – I have to know what the data looks like on the input and hold a mental model of how they change at each step

Jon Norton05/04/14
3511 views
0 replies

Paying Off Your Technical Debt

Technical debts in software are those places where, while the code functions properly, it has internal problems that make it challenging to maintain. As a developer, nothing feels better than tackling a piece of long-standing technical debt and turning code that everyone hates into code that’s a joy to work with.

René Pickhardt05/03/14
4107 views
0 replies

Version Control of Your Linux Config With Git

Just keep in mind that you don’t push the git repository to some public space since the config files might include a lot of passwords. Also look out for his .gitignore in his case the printer does a lot of automatic changes and is thus ignored. You might have similar settings for your configs.

Andrey Cheptsov05/03/14
2469 views
3 replies

What Makes IntelliJ IDEA Different

This post may sound commonplace to you if you already use IntelliJ IDEA. If so, then just ignore it or share with a friend of yours, as it’s intended for people who are still wondering what’s so special about IntelliJ IDEA and why is it so different from other IDEs.

Len DiMaggio05/03/14
1653 views
0 replies

The Red Deer Recorder

One of Red Deer’s goals has always been for it to be an easy to use test platform, but it’s always lacked the convenience of a keystroke recording tool. Until now that is. Before we look at how we can use the Recorder, let’s take a minute to understand just how it works.

Chase Seibert05/02/14
4615 views
0 replies

Loading Classes From Modules With Reflection in Python (Imp Module)

For a dynamic language, it’s more difficult than it needs to be to import a module dynamically in Python. It’s very easy to just from foo import bar, but what if you want to load a list of things and all you have is a string representation of each one, for example foo.bar?

Peter Verhas05/02/14
2031 views
0 replies

You Can Program Bug Free

You can not. This is a lie, just like the cake. You can lower the number of bugs.

Topher Marie05/02/14
4115 views
0 replies

Why Centralize Cron Jobs and Stop Fighting Configuration

As a company focused on server management, we’ve been talking a lot about how we can help DevOps and IT pros automate tasks and generally make their lives easier. Many a customer have asked us to include scheduling of tasks into our product. So, this past week we just did that!

Joseph Ottinger05/02/14
709 views
0 replies

Avail, a language for "articulate programming," released

The Avail team has announced the first release of Avail, an "articulate programming language," which attempts to offer a somewhat natural expression form for solving programming problems.

Rob Allen05/01/14
3372 views
0 replies

Injecting Dependencies Into Your ZF2 Controllers

ZF2 controllers tend to extend AbstractActionController which does not define a constructor. This means that you can define your own constructor in your controllers and use it to inject the dependencies that your controller needs.

Mark Needham05/01/14
7532 views
0 replies

Jersey/Jax RS: Streaming JSON

About a year ago I wrote a blog post showing how to stream a HTTP response using Jersey/Jax RS and I recently wanted to do the same thing but this time using JSON.

Topher Marie05/01/14
2893 views
0 replies

Why Should You Check Out the DevOps Movement?

We’ve all seen industry trends come and go, but DevOps can’t be considered a fad. It’s an approach that has come about as a result of drastic movement in the industry towards automation and the changing role of the IT admin.

Derek Weeks04/30/14
4349 views
0 replies

Are We Doing Enough to Prevent Future “Bleeding Hearts”?

Was this OpenSSL vulnerability an oversight by system administrators installing unknown software? The simple answer is no. OpenSSL is the defacto SSL implementation used on most internet servers around the world. This is not an untested, unverified component that slipped by security audits.

Mark Needham04/30/14
2382 views
0 replies

Clojure: clj-time – Formatting a Date / Timestamp With Day Suffixes

I’ve been using the clj-time library recently – a Clojure wrapper around Joda Time – and one thing I wanted to do is format a date with day suffixes e.g. 1st, 2nd, 3rd.

Topher Marie04/30/14
3180 views
0 replies

Executing Scripts on a Schedule and in Your Language

Shell scripts are a staple in any IT environment. There are quick little scripts for all kinds of little tasks. But, there are also much more complicated scripts to automate critical business processes. If you need to schedule a task or group of tasks, you end up creating a cron job.