Woody Zuill is careful to say he did not “invent” mob programming. But the career programmer turned consultant certainly played a big role in at least codifying the ideas behind mob programming.
And spell out the details he did recently during a free mob programming seminar in the Boston area recently. Zuill starts on the right note, pointing out that he’s used this technique — successfully — with fourth graders. Ahem.
If that doesn’t get you interested, how about the fact that it is completely focused on the positive? “Instead of looking at what’s wrong or always trying to fix things (that) leads to having a sad failure moment,” he explains. Instead, Zuill suggests handing the power back to the people. “The people doing the work can best determine how to do the work.”
It’s like a revolution in the workplace, isn’t it? And it’s the best kind of revolution where everyone gets to drive — i.e., spend time at the keyboard — and everyone also gets time to navigate (i.e., make suggestions). Plus you can break off and do your own thing, you get to move around as much as you like and there’s enough hand sanatizer to go around. Oh, and everyone has their own comfy chair.
Those are all sort of small, almost silly things, but at the end of the day the idea of mob programming is to give the team the power, the space, the time and the rituals to make breakthroughs happen. So the focus on little things gives the chance to let the big things thrive.
The teams should decide what they want to study, and study it together, and by studying, learning will happen and problems will be solved, Zuill stresses.”This is an amplified learning environment where people are more engaged,” he says.”They’re moving around, it’s less fatiguing and the knowledge is more evenly spread when working with others. If you know that what you’re doing is important it’s more likely you’re going to be available mentally.”
This may not be for every employee, or company, and it’s probably not an everyday thing. But there’s no denying it brings a lot of brains and talents to bear on one area. And in a time where it’s easy to fall back on criticism, this is an easy-to-try antidote. “You want to turn up the good,” Zuill explains. “Look for what’s good and turn it up.”
In the midst of all the IoT hype, Claire Rowland is a well-timed reality check. A London-based UX consultant specializing in the IoT space, Rowland is enthusiastic about the opportunities. But she’s also very, very realistic, particularly when it comes to exactly how interconnected these devices are going to have to be, how it’s all going to work, and of course, the $64,000 question: how the heck do you test it all?
Right after we had this conversation, the New York Times did a story on how IoT home thermostat provider Nest did a software upgrade in December that ended up actually causing a whole lot of their thermostats to lose battery power and disconnect from the net, just at the time when temps were plunging around the country. Suffice it to say this glitch left a bunch of users cold, in every sense of the word.
The Nest scenario is exactly what Rowland was talking about. “Testing is not something I have much experience of but I can see that very quickly we are going to get to the point where it’s not possible to test all the devices out there,” she said in an interview this month. “The idea that you could release something and be confident that it is going to cooperate with lots of other products is not going to happen,” she said flatly. “I don’t know what the current thinking is in the software testing mode but there needs to be some way to figure out how we deal with this try and prevent horrible things from happening. Getting your head around this kind of system as a user is extraordinarily complicated and it’s going to be even more extraordinarily complicated as a tester.”
Rowland’s not the only one worried about this. Our expert Gerie Owen explained just how hard IoT testing at home is likely to be and suggested, in a separate article, that the sooner software testers and UX testers get closer together, the better.
But more has to happen. So I’m throwing it out there — how can testers take their strong problem-solving skills to tackle this potentially mighty challenge? I can’t wait to hear your thoughts.
2015 was not a great year for women in technology, but that’s hardly surprising. Gender and technology has continuously been a topic of conversation. For starters, former Reddit CEO Ellen Pao lost her gender discrimination lawsuit. There was also the SXSW GamerGate controversy. The New Year is upon us so are things posed to change in 2016?
Marissa Mayer was named president and CEO of Yahoo Inc. in 2012 but she was a rare example set for women in technology. At that time, men occupied more than 75 percent of executive positions in technology that year, according to the 2012 TechTarget salary survey.
Not much has changed since that time. Women are still underrepresented and paid less than men, despite efforts to bridge the gap. The reason for the shortfall may vary.
TechTarget’s Wendy Schuchart explained one theory that might explain the gulf between men and women is that “women are less likely to apply to or value-higher paying jobs.” Studies, however, have not shown any evidence to support that.
More reasons: Carolyn Leighton, founder, CEO and chairman of Women in Technology International (WITI) explores how the two genders are intrinsically different in regards to IT aptitude. She suggests one of the reasons so few women break to senior leadership roles is the fact that “women have been socialized to believe that women can succeed in the No.2 role.”
More reasons: Understanding that women communicate differently from men might be the first step in addressing the disparity regarding gender and technology. Leighton tells SearchCIO, that women are inherently different than men and that women intrinsically are multitaskers.
But what are the solutions?
Massachusetts Technology Collaborative CEO Pamela Goldberg explains one way her organization is aiming to break down the barriers of gender imbalance is by encouraging young people to study math and science in order to be prepared for entry level jobs. She adds that the technology industry is a growing interest for women.
More solutions: Facebook CEO Mark Zuckerberg encouraged young women to be the nerd. In response to a post that read “date the nerd in school, he may turn out to be a Mark Zuckerberg,” the social media innovator said it’d be better if they were “the nerd in the school so they can be the next successful inventor!”
It is difficult to change a collective mindset but we need to be determined advocates for change. But perhaps what we need to do most of all is to stop talking about gender and technology. And when we do, maybe that is when it ceases to be newsworthy.
Maybe it’s where I’m sitting but this feels like a time of great change in the software design and test arenas. Designers are in short supply, everywhere, but at the same time companies are looking for more from them — more customer-facing, more business experience, more specific industry expertise. Oh, and if designers can test too, that’s an added bonus. On the testing side, there’s certainly a push to either automate or eliminate the function entirely. And if they’re to remain a viable part of the development process, employers would like to see them do more coding.
Throw the wild and unpredictable Internet of Things in to that mix and everything just feels, well, uncertain. Where do we go from here? We know design and test are important but are they important enough in an organization to make a difference?
Perhaps a look back at some research in the recent past can give us all a bit of New Year encouragement. In the early 2000’s, the Danish Design Center created the Design Ladder as a way to measure the relationship between a company’s investment in design and its productivity or financial success. The Design Ladder has four stages: Stage one is zero design; stage two is design as styling; stage three is design as process and stage four is design as strategy. Companies that operated on stage three — design is integral — and stage four, where design is actually used to encourage innovation, reported 22% higher revenues than those at stage one or with no design.
While this survey is dated, the idea of tying profits to design and actually tracking the results is probably even more important today than it was in the mid-2000s. There need to be more efforts to track the financial impact of design (and test!)
Does your company have an innovative way to look at this problem? Let me know.
Perhaps 2015 reasons is a bit of a stretch. In any case, as we wrap up this year, it’s interesting to look at where we’ve been and what we’ve all been interested in.
It is certainly no surprise that Jenn Lent’s most excellent piece on the Agile Manifesto and whether it is outdated or not was the most-read article on SearchSoftwareQuality this year. Not only was that piece read, it was hotly debated and spawned a lot of follow-up conversation. After attending Agile 2015, I certainly understand it. There’s a push-pull among Agile followers between staying true to the Manifesto and customizing it to a company’s particular need. The Manifesto reminds me a bit of the debate over the pirate term “parlay” in the Pirates of the Caribbean movies. As the Jeffrey Rush character says, paraphrasing, “parlay isn’t so much of a rule as a suggestion.” And maybe that’s how we should all look at the Agile Manifesto?
No matter how close we hew to the Manifesto, there’s no question Agile was on everyone’s minds this year. Another hugely popular story — on our Essential Guide to gathering and managing software requirements — resonated with a lot of you this year. The very important development step of determining software requirements is clearly something many of us want to understand and implement more effectively.
Continuing the Agile trend, I think we also wanted to know how well we’re doing with it all this year. Jennifer Lent’s other well-read Agile piece — Three traits of a mature Agile team — underscores the important role a “mature” Agile team has when engaged in mobile development particularly. Every company has gone mobile, it seems, and any way to streamline that process is worth considering.
Finally, my piece on how the lines are starting to blur between testers and developers was apparently well-timed. With some companies phasing out testing all together, and others asking testers to code, and developers to test, there’s plenty of churn and concern over the role of testers today and in the near future. It should be more simple, right? But of course it’s not.
Do have a favorite story or trend or news event of the last year? Let me know!
With all the talk about the ongoing worldwide software developer shortage, it’s encouraging to see the grass roots efforts by the non-profit Code.org to bring coding to everyone. In fact, the group has designated this week — December 7-13 — for a worldwide “Hour of Code.” As of right now there are 191,019 coding events scheduled around the world this week, many, but not all, in classrooms.
The goal is to expose ages 6 to 106 (as the organizers put it) to the joys and benefits of coding. And with tutorials based on Star Wars, Minecraft, and Elsa from Frozen, there’s probably a little something interesting for just about anyone new to coding. Those with a bit of coding experience can turn to partner Khan Academy which is offering a number of tutorials to learn the basics of Java, CSS and SQL.
And if you’re wondering if this is really a worldwide event, check out this list…wow!
I’m sure this has the “preaching to the choir” ring about it but I think it’s important to remember that most people think coding is intimidating and just for people good at math or spatial skills. In fact all of us can, and should, learn the basics of coding because as we’ve reported extensively, the job market is changing for everyone. Coders are being asked to acquire more soft skills and people in marketing and finance and healthcare and manufacturing (just to name a few) are being asked to learn how to code. And let’s face it, coding is cool, right?
So I’m going to ask that we all share an hour of code (or two) this week with someone who doesn’t know anything about it. It’s good “PR” for the developer/tester professions and it’s fun too. Plus you never know when you might influence someone to change careers or add a skill or two. I’m starting with Star Wars…how about the rest of you?
It’s tempting to think of the worldwide software developer shortage as a chicken and egg problem. Is there too much demand? Are there too few people?
It doesn’t matter which came first because of course both things are true. Yes demand is out of control because every company needs software developers. And yes, there are too few people, a fact which some experts believe was made even worse by the economic downturn. Too many layoffs made going in to a technology field not particularly appealing.
But there’s a third factor, and this is where it really gets complicated. Perhaps because software development is so ubiquitous, the very essence of the job has changed. It’s no longer enough to be technically skilled. Employers expect that. But they also want a developer who can work with a customer, talk the business language, be an industry insider and have a wide array of soft skills.
This “uber developer” is someone who is practically required to have two career tracks – a tech track and a business track. A nurse practitioner who can code? Check. A marketing whiz with UX experience? Check. A certified financial planner with mobile development skills? Check.
An interesting trend, certainly, but it’s by no means clear that it’s going to be easy to find these skill combinations in sufficient numbers to ease the shortage. Some people will welcome a mid-career shift (ok, even I think about going to an app dev boot camp sometimes…) but for many people this “not found in nature” skill combo is never going to make sense.
Matt Sigelman, CEO of Boston-based research firm Burning Glass, gets credit for the “not found in nature” observation and has spent a significant amount of time thinking about this issue. He does think employers are over-reaching and suggested that instead of trying to hire that dream developer, why not try to grow it internally? “There are a lot of jobs that aren’t software jobs that require software skills,” he explained. “And it’s much easier than it ever was before to acquire software skills. You can make the case that you can take business people and they can learn how to manage a custom database or build or run analytics. This gives them new skills without having to fundamentally reposition their careers.”
Sigelman thinks this education can be done, in many cases, in a nearly DIY way. And Matthew McCullough, director of field services for GitHub, thinks his site can and should be an option for companies looking to do internal education. There are no short-term fixes, but this might make the most sense.
Is your company doing any internal developer training or continuing education? I’d love to hear about it.
It’s a fine line between appropriate, and not. But in today’s open society, how do you draw that line? After all, what is funny to one person is offensive to another.
I was talking to our testing expert Gerie Owen about this the other day. Gerie’s seen it all in her years of testing, and she told me an interesting story about a development and testing dilemma that really happened. It seems that a tester discovered a rather troubling “bug,” which in this case was the use of the F-word in a mobile app. When the tester approached the developers, he was told the word was “used in a playful way,” Gerie said. In fact, they told the tester to back off and that it was a creative decision and most assuredly not a bug.
The tester was troubled by this and wondered what to do, and whether or not to escalate this issue.
Gerie didn’t mince any words in response: “No, no responsible company can do this. I’m sorry, your developers are dead wrong. You cannot use that word, or any other word that is not in a G-rated dictionary, in your app. It doesn’t matter who is using it, or for what purpose. This is completely disrespectful of your users, despite what your developers may think. Furthermore, no app store is likely to accept an application that contains inappropriate language.”
And she didn’t stop there. She said that of course the matter should be brought to the attention of management because of the risk to the company’s reputation. And that the tester really needed to not just advocate for quality, but also be an advocate for the users.
We already knew testing was a tough, and under-appreciated, job, but add in arbitrating moral dilemmas and wow, that’s taking it to the whole next level.
Has this kind of thing happened to you? And if it has, what did you do? Email me because I’d like to hear all about it!
A brand new report from the Application Developers Alliance (and conducted by IDC) showcases some very encouraging news about the software development profession. A healthy 68% of today’s software developers have 5 or more years of experience, and 66% report they’re “energized” by their jobs. What’s exciting them? 44% said wearables and 38% said robotics.
Wondering where the tired, overworked, burned out developer is? Not here, apparently. “It is not surprising the vast majority of developers are gainfully employed freelancers by choice or at an organization by choice,” said Jake Ward, executive director and co-founder of the Application Developers Alliance. “It also doesn’t surprise us that the satisfaction level of professional coders is higher than the conventional wisdom might success. The reality is most working developers with 401ks and manageable commutes are happy to build really exciting products inside of a long term company.”
It’s no great revelation to hear that the favorite software development activity is coding – at 71% — but what might raise some eyebrows is that functional testing and bug tracking (traditionally what “testers” do) is popular with 62% of developers, roughly the same percentage as requirements and design at 61%.
And of course we all know it’s a mobile world. A hefty 87% of organizations where developers worked were involved in mobile development and 18% said they were pursuing a “mobile first” strategy.
What keeps developers up at night? Staying current with languages, frameworks and tools disturbed the slumber of 57%; other stressors included creating high quality code (43%), work/life balance (39%), overly demanding clients who “don’t get it” (37%) and finding work that utilizes a particular skill set (37%). If developers are stumped, they are overwhelmingly inclined to turn to the Internet for help (63%), showing an independent spirit, Ward said.
He is most encouraged, though, by the fact that a growing number of women are becoming developers. In fact, the percentage of brand new female developers hit 42% for the first time ever this year. “Our workforce is increasingly becoming egalitarian,” he said. “Developers are less and less male and it’s great to see that laid out and benchmarked.” Developers with one to five years of experience are 30% female, while the overall percentage of women in the profession is 25%.
Read the whole report for yourself, here (you’ll need to enter your email).
I’ve been talking to a lot of stressed out testers recently. These are people who take their profession seriously but don’t always think anyone else does, particularly when they’re told time and again that they need to learn how to code.
These aren’t folks who really want to be developers. As one said to me, “If I’d wanted to be a developer, I would have been. I want to be a tester.”
Is there a way for everyone to get along and get the job done? The answer might be found with mob programming, kind of like pair programming on steroids. Mob programming gathers 6 to 8 people in a room to work together to code, or perhaps even to test. Some, like Lisa Crispin, are calling it mob testing, and while she says she’s tried it, she’s not ready to talk about it yet. But Finland-based Maaret Pyhäjärvi, who calls herself a “collaborative software specialist with an emphasis on testing,” has tried mob testing and lived to tell about it.
On the one hand, she told me it brought her team together in a way she didn’t expect because they were all in a room together and you could actually see problem solving skills or time-saving shortcuts you had no idea existed before. The real advantage of mobbing, she said, is that no one had to explain anything because everyone experienced the same things.
That said, she did say it was difficult. Working in a mob “is a challenge when testers are not really programmers,” she explained. “They’re forced in to programming and my feeling is that some people are going to be more comfortable with that than others. This has the potential to be divisive.”
One of the challenges for testers is that you’re sitting close to the code and there’s a lot of “bored” downtime when the programmers are down in the code details. Testers are there showing support, but it can get tedious, she said. “I’m not certain if I enjoy this style of working in the long term,” she admitted. “For people with a testing background this can be very difficult for the first time because you’re really in to the code.” And she said the idea of taking a day and just working together can be a tough sell to management and developers as it can seem to be a waste of time.
Would mob testing/programming be the solution for your company? Let me know what you think!