Click here to close now.


Microservices Expo Authors: Chris Witeck , Greg O'Connor, Elizabeth White, Carmen Gonzalez, Ian Khan

Related Topics: Microservices Expo, Java IoT

Microservices Expo: Article

Crowdsourcing - A Best Practice or a Worst Practice?

How to know if crowdsourcing is for you

For the record, I am neither pro-crowdsourcing nor anti-crowdsourcing. For purposes of this article, I'm going to assume that we're talking about software development; however, crowdsourcing could be just as appropriate for situations as diverse as architecture, graphical design, PowerPoint slides or even developing a great pizza recipe.

The Ethics of Crowdsourcing
There has been some criticism of the crowdsourcing model on ethical grounds - for example, that it is unfair to the participants. For the most part, I'm going to stay out of that controversy. Though, if the rules are made clear and are posted up front, then each party can decide on their own whether to participate. To me, that makes it fair. If someone is cheated, that's a different story, and there are other (legal) remedies for that.

We've all engaged in things like job interviews or pitches to venture capital firms where we knew going into it that we would bear the burden of travel, preparation, etc., and that there were no guarantees whatsoever of results. I don't see how crowdsourcing is materially different. But the purpose of this article is to discuss crowdsourcing as a method of creating software - not to debate the ethical points.

Crowdsourcing: Deja Vu?
Crowdsourcing is in some ways like using a swear word. In some situations, it's appropriate and helpful, and in other situations, it's simply a terrible idea and entirely counter-productive. It's up to the business person to intelligently determine whether a particular issue is crowdsource-appropriate.

This is certainly not unique to crowdsourcing - the same can be said for outsourcing (or offshore outsourcing). In fact there are some similarities between the two, in that some years ago, offshore outsourcing grew in popularity - and briefly seemed to be promoted by many as a solution to every problem out there. I see the same thing happening with crowdsourcing today. I'm highly critical of organizations which promote crowdsourcing as a near-panacea. Apart from Duck Tape, nothing is a near-panacea.

With offshore outsourcing, there were some spectacular successes and even more spectacular disasters. If crowdsourcing truly takes off, we'll see the same pattern happen there too.  In time, rationality mostly prevailed and outsourcing/offshoring software development became "yet another tool" to be leveraged by the savvy business user.

Shortcomings of Crowdsourcing
Crowdsourcing has many of the same shortcomings as outsourcing, and a few more to boot. Some issues I see:

1) For the most part, the really talented architects and developers are busy with lucrative and demanding jobs. So if you think you're going to get someone to create something better than Hadoop without any compensation guarantees, think again. I'm not saying that there aren't some highly skilled people out there. But one needs to be realistic. You can't open something up to crowdsourcing and expect the world to come to you. On the other hand, your particular problem might be perfect for someone out there.

Although "contests", such as those promoted by organizations like TopCoder, can be useful for improving the quality of potential solutions, the quality of the end-solution is mostly determined by the quality of the talent pool and how well the contest is set up and managed. The fact that there is a contest doesn't change anything to any significant degree - it's still crowdsourcing.

And don't forget the overhead of managing and "judging" any such competition.  It's not as easy as determining the winner in a 100 metre dash.  As always, a badly defined and poorly run competition is almost certainly a failed one.

2) It's human nature that results and motivation go hand in hand.  In the working world, motivation takes many forms, and every person is different.  In general, people are motivated by compensation (monetary and non-monetary), respect and visibility from others, a sense of being part of a team, and the satisfaction of a job well done.

Because the nature of the relationship between a crowdsourcing participant and the business is so very ephemeral, the typical person simply doesn't have the underlying motivation.

3) The mathematics of complex systems are against outsourcing in general.  By this I mean that the effort to successfully manage such a project increases geometrically relative to the complexity of the problem trying to be solved.  Specifically, the effort to fully document the requirements of a project, to quality assure the results, to ensure that the proposed solution not only meets the requirements as set forth,  and provide a sound and extensible architectural base for the future increases MUCH faster than the actual effort required to solve the problem.

If you get involved in trying to manage multiple disconnected or semi-connected parties with varying competing or complementary solutions, that makes things even worse.

4) Who's going to maintain all that code?  Years ago, I had to write a utility that extracted data and metadata from a proprietary column-store database and stuff it into Oracle 10.  A year after I wrote the utility, I needed to go back and modify it.  It was a difficult task.  It's difficult to maintain your own code.  Maintaining someone else's code is far more difficult.  Although turnover is common in any organization, supportability of in-house developed code is significantly easier than externally acquired code.

5) Collaboration with internal team members is an important part of most development efforts, and this is something that is difficult with a crowdsourcing solution.

Advantages of Crowdsourcing
All that said, crowdsourcing has some real benefits.  True advantages.  For some projects (or project components), it's a great idea.

1) It can be highly cost effective when used properly (i.e. managed properly and employed for an appropriate class of problem).

2) The wide range of potential problem-solvers out there mean that some very interesting and innovative solutions can pop up.

3) External people aren't constrained by the mental "boxes" and preconceived notions that internal people create for themselves.

4) When used properly, the downside of crowdsourcing can be minimized.

Is Crowdsourcing Right for Your Project? How Do You Minimize Risk?
Anyhow, all this comes down to the old maxim: use the right tool for the job.  Some projects just aren't cut out for crowdsourcing, and some are.

That being said, you can't fix stupid, and some people insist on using a hammer where a screwdriver is the correct implement.  So if you cut off your finger using a bandsaw while trying to open up a can of tuna fish, don't go blaming the bandsaw.

If you are considering crowdsourcing, consider your answers to the following questions.  They may help you determine if your project is truly crowdsource-appropriate, and help you minimize the risk and/or impact of failure.

a) How much effort is required to appropriately define the problem as well as requirements for the solution...up front.

b) How much effort will it take to manage the crowdsourcing process?

c) How much calendar time will be expended if the crowdsourcing process fails to yield a useful solution?

d) What is the impact on the business if crowdsourcing doesn't work for this particular problem?

e) What is the impact on the business of using internal people instead of crowdsourcing? What is the "opportunity cost" of using internal people?

f) Can you define "pull the plug" points for a crowdsourcing project?  For example, how many parties express interest in working on your problem?

g) Can you establish some preliminary indicators that allow you to predict success likelihood for the final solution?

h) How do you decide between "pull the plug" vs. "go back and try to remedy the situation" if the leading indicators aren't looking good?

i) Can you define "success"? Do you have criteria in place for judging and testing solutions?

Crowdsourcing: Post Script
For an excellent followup on this article, please read "Maximizing CrowdSource Success" - perspectives from CrowdSourcing pioneer and TopCoder founder Jack Hughes.  Jack gives additional insight into many of the "must ask" questions to help readers determine whether crowdsourcing is appropriate for them - and, if so, how to maximize chance of success.

More Stories By Hollis Tibbetts

Hollis Tibbetts, or @SoftwareHollis as his 50,000+ followers know him on Twitter, is listed on various “top 100 expert lists” for a variety of topics – ranging from Cloud to Technology Marketing, Hollis is by day Evangelist & Software Technology Director at Dell Software. By night and weekends he is a commentator, speaker and all-round communicator about Software, Data and Cloud in their myriad aspects. You can also reach Hollis on LinkedIn – His latest online venture is OnlineBackupNews - a free reference site to help organizations protect their data, applications and systems from threats. Every year IT Downtime Costs $26.5 Billion In Lost Revenue. Even with such high costs, 56% of enterprises in North America and 30% in Europe don’t have a good disaster recovery plan. Online Backup News aims to make sure you all have the news and tips needed to keep your IT Costs down and your information safe by providing best practices, technology insights, strategies, real-world examples and various tips and techniques from a variety of industry experts.

Hollis is a regularly featured blogger at ebizQ, a venue focused on enterprise technologies, with over 100,000 subscribers. He is also an author on Social Media Today "The World's Best Thinkers on Social Media", and maintains a blog focused on protecting data: Online Backup News.
He tweets actively as @SoftwareHollis

Additional information is available at

All opinions expressed in the author's articles are his own personal opinions vs. those of his employer.

@MicroservicesExpo Stories
I recently attended and was a speaker at the 4th International Internet of @ThingsExpo at the Santa Clara Convention Center. I also had the opportunity to attend this event last year and I wrote a blog from that show talking about how the “Enterprise Impact of IoT” was a key theme of last year’s show. I was curious to see if the same theme would still resonate 365 days later and what, if any, changes I would see in the content presented.
It's been a busy time for tech's ongoing infatuation with containers. Amazon just announced EC2 Container Registry to simply container management. The new Azure container service taps into Microsoft's partnership with Docker and Mesosphere. You know when there's a standard for containers on the table there's money on the table, too. Everyone is talking containers because they reduce a ton of development-related challenges and make it much easier to move across production and testing environm...
The Internet of Things (IoT) is growing rapidly by extending current technologies, products and networks. By 2020, Cisco estimates there will be 50 billion connected devices. Gartner has forecast revenues of over $300 billion, just to IoT suppliers. Now is the time to figure out how you’ll make money – not just create innovative products. With hundreds of new products and companies jumping into the IoT fray every month, there’s no shortage of innovation. Despite this, McKinsey/VisionMobile data...
Internet of @ThingsExpo, taking place June 7-9, 2016 at Javits Center, New York City and Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with the 18th International @CloudExpo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world and ThingsExpo New York Call for Papers is now open.
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York and Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th Cloud Expo and will feature technical sessions from a rock star conference faculty ...
Just over a week ago I received a long and loud sustained applause for a presentation I delivered at this year’s Cloud Expo in Santa Clara. I was extremely pleased with the turnout and had some very good conversations with many of the attendees. Over the next few days I had many more meaningful conversations and was not only happy with the results but also learned a few new things. Here is everything I learned in those three days distilled into three short points.
One of the most important tenets of digital transformation is that it’s customer-driven. In fact, the only reason technology is involved at all is because today’s customers demand technology-based interactions with the companies they do business with. It’s no surprise, therefore, that we at Intellyx agree with Patrick Maes, CTO, ANZ Bank, when he said, “the fundamental element in digital transformation is extreme customer centricity.” So true – but note the insightful twist that Maes adde...
As organizations realize the scope of the Internet of Things, gaining key insights from Big Data, through the use of advanced analytics, becomes crucial. However, IoT also creates the need for petabyte scale storage of data from millions of devices. A new type of Storage is required which seamlessly integrates robust data analytics with massive scale. These storage systems will act as “smart systems” provide in-place analytics that speed discovery and enable businesses to quickly derive meaningf...
DevOps is about increasing efficiency, but nothing is more inefficient than building the same application twice. However, this is a routine occurrence with enterprise applications that need both a rich desktop web interface and strong mobile support. With recent technological advances from Isomorphic Software and others, rich desktop and tuned mobile experiences can now be created with a single codebase – without compromising functionality, performance or usability. In his session at DevOps Su...
Using any programming framework to the fullest extent possible first requires an understanding of advanced software architecture concepts. While writing a little client-side JavaScript does not necessarily require as much consideration when designing a scalable software architecture, the evolution of tools like Node.js means that you could be facing large code bases that must be easy to maintain.
People want to get going with DevOps or Continuous Delivery, but need a place to start. Others are already on their way, but need some validation of their choices. A few months ago, I published the first volume of DevOps and Continuous Delivery reference architectures which has now been viewed over 50,000 times on SlideShare (it's free to registration required). Three things helped people in the deck: (1) the reference architectures, (2) links to the sources for each architectur...
You may have heard about the pets vs. cattle discussion – a reference to the way application servers are deployed in the cloud native world. If an application server goes down it can simply be dropped from the mix and a new server added in its place. The practice so far has mostly been applied to application deployments. Management software on the other hand is treated in a very special manner. Dedicated resources are set aside to run the management software components and several alerting syst...
Hiring the wrong candidate can cost a company hundreds of thousands of dollars, and result in lost profit and productivity during the search for a replacement. In fact, the Harvard Business Review has found that as much as 80 percent of turnover is caused by bad hiring decisions. But when your organization has implemented DevOps, the job is about more than just technical chops. It’s also about core behaviors: how they work with others, how they make decisions, and how those decisions translate t...
Culture is the most important ingredient of DevOps. The challenge for most organizations is defining and communicating a vision of beneficial DevOps culture for their organizations, and then facilitating the changes needed to achieve that. Often this comes down to an ability to provide true leadership. As a CIO, are your direct reports IT managers or are they IT leaders? The hard truth is that many IT managers have risen through the ranks based on their technical skills, not their leadership ab...
Continuous processes around the development and deployment of applications are both impacted by -- and a benefit to -- the Internet of Things trend. To help better understand the relationship between DevOps and a plethora of new end-devices and data please welcome Gary Gruver, consultant, author and a former IT executive who has led many large-scale IT transformation projects, and John Jeremiah, Technology Evangelist at Hewlett Packard Enterprise (HPE), on Twitter at @j_jeremiah. The discussion...
In his General Session at DevOps Summit, Asaf Yigal, Co-Founder & VP of Product at, explored the value of Kibana 4 for log analysis and provided a hands-on tutorial on how to set up Kibana 4 and get the most out of Apache log files. He examined three use cases: IT operations, business intelligence, and security and compliance. Asaf Yigal is co-founder and VP of Product at log analytics software company In the past, he was co-founder of social-trading platform Currensee, which...
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound...
Discussions of cloud computing have evolved in recent years from a focus on specific types of cloud, to a world of hybrid cloud, and to a world dominated by the APIs that make today's multi-cloud environments and hybrid clouds possible. In this Power Panel at 17th Cloud Expo, moderated by Conference Chair Roger Strukhoff, panelists addressed the importance of customers being able to use the specific technologies they need, through environments and ecosystems that expose their APIs to make true ...
In today's enterprise, digital transformation represents organizational change even more so than technology change, as customer preferences and behavior drive end-to-end transformation across lines of business as well as IT. To capitalize on the ubiquitous disruption driving this transformation, companies must be able to innovate at an increasingly rapid pace. Traditional approaches for driving innovation are now woefully inadequate for keeping up with the breadth of disruption and change facin...
Microservices are a very exciting architectural approach that many organizations are looking to as a way to accelerate innovation. Microservices promise to allow teams to move away from monolithic "ball of mud" systems, but the reality is that, in the vast majority of organizations, different projects and technologies will continue to be developed at different speeds. How to handle the dependencies between these disparate systems with different iteration cycles? Consider the "canoncial problem"...