About the image – I originally thought naming this post “How to Hire Ninjas” but then realised I don’t honestly like the analogy. DevOps people are not ninjas – they don’t work in disguise and aren’t trained from the very childhood. Moreover – this heroical ninja image is actually harmful. It only contributes to the DevOps identity crisis as outlined by Baron Schwartz and lies at the very heart of the problem that I’m trying to suggest a solution for here. It’s no secret that the tech workforce market is starving for DevOps. (I know, I know – DevOps is not a job title, it’s a mindset.) The cloud, BigData and modern software delivery standards all produce the need for professionals who know how to get those complicated systems built, deployed and running. The demand keeps growing and the supply just doesn’t seem to catch up. More and more organisations…

Read more

I got the offer to review this book on Ansible user group in LinkedIn. My previous experience with Ansible dated back about 1.5 years ago and the documentation on Ansible site was quite sufficient to get me up and running. So I was curious to see if the book would offer any substantial added value. I feel like the book’s title is misleading. If you’re looking just to learn Ansible – you’ll probably be better off using the official Ansible docs and walk-throughs. But – this book covers much, much more – e.g: using ServerSpec to test your configuration, building Docker containers, monitoring playbook execution with Nagios, etc. Thus – it provides you with a much bigger picture regarding where Ansible fits into your DevOps ecosystem. And – it can be a reference for all kind of things you might want to do with Ansible in the future – after…

Read more

[slideshare id=43582006&doc=devopstransparencyselfservice-share-150116054345-conversion-gate02]

The introduction of Continuous Delivery systems and processes (when implemented correctly) brings four basic values to software development lifecycle: Structure Transparency Efficiency Quality While all of those are very important, today I’d like to put some more focus on just one of them which is sometimes overlooked or not understood correctly – that is Transparency . In fact there’s another ‘T’ word which results from transparency –Trust, and I tend to think it’s the most important quality of a CD process. Automated software delivery systems come to replace and improve the execution of multiple manual tasks involved in releasing quality software to end users. The benefits of automation are clear: create a repeatable process, eliminate human errors, replace expensive human time with cheaper machine time, streamline the tasks and there’s more… But what we must never forget is that there are some perils too. Perils related to putting all the processes under the hood of…

Read more

1. Configure yum to use the RPMFusion repository: su -c ‘yum localinstall –nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm’ 2. Install guest additions: Fedora19: sudo yum install VirtualBox-guest-4.2.14-1.fc19 Fedora20: sudo yum install VirtualBox-guest-4.3.14-1.fc20

I was asked to deliver a Maven training for a team of Java developers. This was both a nice opportunity to refresh my Maven knowledge and to finally give Prezi ( http://prezi.com) a try. I realize that slides without the presenter aren’t worth much but still – feel free to use and share. Maven Revisited by Anton Weiss

A lot has been said and written in these last 3 years in an attempt to define what DevOps really stands for. One thing most of us agree upon is that DevOps is not a job definition – it’s a culture, a mindset, a software manufacturing practice which is focused on breaking the walls between the developers and the operations. And it is a very cool and hip practice, one that everybody likes and everybody wants a piece of. So job postings for “DevOps engineers” pop up each day like mushrooms after a summer rain. And we adapt ourselves to the new realities and start calling ourselves DevOps engineers, even though half a year ago we were called CM, or integrators, or system engineers, or whatever. I myself just signed a new contract for “DevOps” role. And yes – I’m going to do DevOps. But I know that if we…

Read more

We’re running unit tests in the CI flow for our iOS products. One day the CI builds started failing with hundreds of lines of the following: profiling:invalid arc tag (0x0000000c) profiling:invalid arc tag (0x43555b2d) profiling:invalid arc tag (0x0000000c) profiling:invalid arc tag (0x43555b2d) profiling:invalid arc tag (0x0000000c) profiling:invalid arc tag (0x614d534e) profiling:invalid arc tag (0x5f787863) profiling:invalid arc tag (0x00000000) profiling:invalid arc tag (0x00000000) ** TEST FAILED ** But there were no actual failures in any of the tests.Turns out the thing to do is to clean out the derived data folder ( default: ~/Library/Developer/Xcode/DerivedData ) Problem solved 🙂 //

One of the development teams we work with is developing in TypeScript and using tslint for code analysis. We’ve established a CD process for them which involves compiling typsecript to javascript, minifying the resulting code and deploying it to a staging server. Naturally they wanted to run tslint as a part of this flow in order to get notified on any new warnings a commit might have introduced. When running static code analysis in CD flow one wants some statistics on analysis results and a nice graphic representation of the results. All these are already implemented in the Jenkins PMD plug-in.  (We’ve already used the PMD plugin successfully for representing the OCLint analysis results we run for an iOS project we support.) So the only thing we needed was formatting the tslint output according to PMD format, which is in fact a very simple xml markup. Writing a formatter was…

Read more

http://www.go.cd/2014/02/25/go-moving-to-open-source.html ThoughtWorks have been industry acknowledged experts in everything related to the practices of Continuous Integration and Delivery throughout the last decade. They were the creators of CruiseControl which was a de-facto standard tool for CI before all the new tools arrived. Neverthless their own commercial Conitnous Delivery platform named ‘Go’ has never come close to the popularity of even Bamboo or TeamCity ( not to mention Jenkins ). Two days ago they announced they are making Go open-source, obviously as an attempt to increase market share. I gave GO a test-drive a couple of years ago and it seemed like a good tool back then. Now it’s open-source I’ll definitely want to look at it again. I promise to update on my impressons.

70/76