September 15, 2013
TechTarget content is either really good or really bad. In the cases of great content, it's because of great authors like Mike Laverick or Scott D Lowe. Then there are the swing-and-a-miss type articles, which I'm linking to now in order call attention to the fact that it pays to be discerning.
There's a quiz I linked to on my twitter stream that is just really terrible:
— Matt Simmons (@standaloneSA) September 16, 2013
I followed that up with an amendment that what I should have said was that the problem is with people's interpretation of what DevOps is, not with the actual movement itself.
Look at some of the questions:
Which of these accurately describes the term "DevOps?"
A) DevOps is a cultural approach to improving communications between the development and operations teams in an organization
B) DevOps is the term describing someone who moderates the exchanges between development and operations
C) DevOps is the name of a job for an employee who can work as both a systems engineer and a developer
D) All of the above
The "correct" answer, which is D, is bullshit. Complete, and absolute bullshit, and I don't just throw that term around on my blog. DevOps is ABSOLUTELY POSITIVELY NOT THE NAME OF A JOB. Read the replies to my original tweet to see what other people in the community think, if you don't believe me.
It's so bad that it's inexcusable, and it does nothing but perpetuate the worst ideas about the movement; that you could "hire a DevOps" or that it's a role to be filled on an org chart. Including that question would have been fine if the answer was A (which is the REAL answer) and getting THAT wrong belies the complete misunderstanding of the author that the rest of the test makes clear.
*takes a breath* Lets move on.
The DevOps movement is an outgrowth of which software development methodology?
C) Extreme Programming (XP)
D) TDD and MDD
A is the right answer on both the test and reality, sort of. I mean, the scrum framework is an agile methodology, but I don't think it would be accurate to say that the DevOps movement came from scrum as much as it came from agile, if it could be said to come from any software development methodology.
It would be MUCH more accurate to say that the DevOps movement arose from the need to provide massive farms of servers and to make rapid changes uniformly and to ensure a standard operating platform. But I suspect that's asking too much of this quiz.
Which of these tools is not associated with DevOps?
I hate this question nearly as much as I hated the first one. It's pretty obvious that they want you to choose Nicira, but why? Is it associated with DevOps? Well, I mean, it's a company, not a tool, so I guess it's the right answer by default, but who gets to decide that a tool is "associated with DevOps"? Is vi associated with DevOps? How about "Chrome", or maybe Xterm (or Eterm or Kterm or whatever).
For the record, OpenFlow and virtual switches, which is what Nicira works/worked on, is absolutely great for the DevOps movement. Infrastructure as Code is practically the motto, and this is just another example of that.
The DevOps movement has evolved to solve which problems?
A) Increasingly complex, virtualized IT environments
B) The need for multiple software releases, sometimes in one day
C) The traditional siloed approach to app development
D) Peace in the Middle East
E) All of the above
OK, I added D) in that list. I felt ok with that, because it's the only question that didn't make me want to throw up in my mouth a little. Yes, it has evolved to solve those problems...and how you could ask this question and still get question 1 wrong is actually a little mystifying.
True or false? DevOps automation tools have seen limited adoption because of their reliance on coding skills.
"DevOps automation tools", huh? Not like those old crappy automation tools which didn't have the DevOps(tm) embossed logo. Seriously, this is a crappy question because it assumes that some imaginary line between DevOps tools and non-DevOps tools. Does vCloud Director count? It's not actually so much programming as arranging, for the most part. Does powershell count? It's DevOps-y but for Windows. Is that inside or outside of the imaginary circle? It's so hard to keep track.
Which of these is not a primary concern when choosing a DevOps tool?
A) Public cloud compatibility
B) Network and IT support
C) Integration with collaboration tools
D) Link between deployment and management or monitoring tools
I think I would go with E) flavor. What color would you like your DevOps tool? Because, like, I'm partial to sherbert. Aside from the argument to the previous question, which of those things would you say isn't important (assuming you can even tell what they're talking about when they say "Network and IT support"). I'm fond of all of them, but then again, I'm a big fan of tools that do one thing and do it well, and allow you to provide the plumbing between things yourself. So I suppose we're choosing between C and D. The "right" answer is C, because I guess things like Google Docs, Dropbox, and any number of other collaboration tools count as "public clouds".
Whatever. Here's the last question:
True or false? DevOps is new enough that most apps are not written for it specifically.
If you were going to write a tool for a relationship, how would you do it? Would it end up looking like OKCupid, where Developers seek out Operations for long walks on the beach, romantic candlelit dinners, and reliable infrastructures for their continuous integration services? I'm honestly not sure what a specifically DevOps tool would look like, but I have my guess.
Anyway, the survey sucked. Please don't take the view that DevOps is a spot on an org chart or that tools "belong" to a movement, or even that everyone should be doing DevOps. Be aware of the movement, learn about the tools that have sprung from it, but put things to use in a way that makes sense for your environment. You know it better than any journalist writing an article that you read online, so make the decision yourself and don't let people think for you.