Ask Slashdot: Software Issue Tracking Transparency - Good Or Bad?
First time accepted submitter Mike Sheen writes I'm the lead developer for an Australian ERP software outfit. For the last 10 years or so we've been using Bugzilla as our issue tracking system. I made this publicly available to the degree than anyone could search and view bugs. Our software is designed to be extensible and as such we have a number of 3rd party developers making customization and integrating with our core product.
We've been pumping out builds and publishing them as "Development Stream (Experimental / Unstable" and "Release Stream (Stable)", and this is visible on our support site to all. We had been also providing a link next to each build with the text showing the number of bugs fixed and the number of enhancements introduced, and the URL would take them to the Bugzilla list of issues for that milestone which were of type bug or enhancement.
This had been appreciated by our support and developer community, as they can readily see what issues are addressed and what new features have been introduced. Prior to us exposing our Bugzilla database publicly we produced a sanitized list of changes — which was time consuming to produce and I decided was unnecessary given we could just expose the "truth" with simple links to the Bugzilla search related to that milestone.
The sales and marketing team didn't like this. Their argument is that competitors use this against us to paint us as producers of buggy software. I argue that transparency is good, and beneficial — and whilst our competitors don't publish such information — but if we were to follow our competitors practices we simply follow them in the race to the bottom in terms of software quality and opaqueness.
In my opinion, transparency of software issues provides:
Identification of which release or build a certain issue is fixed.
Recognition that we are actively developing the software.
Incentive to improve quality controls as our "dirty laundry" is on display.
Information critical to 3rd party developers.
A projection of integrity and honesty.
I've yielded to the sales and marketing demands such that we no longer display the links next to each build for fixes and enhancements, and now publish "Development Stream (Experimental / Unstable" as simply "Development Stream") but I know what is coming next — a request to no longer make our Bugzilla database publicly accessible. I still have the Bugzilla database publicly exposed, but there is now only no longer the "click this link to see what we did in this build".
A compromise may be to make the Bugzilla database only visible to vetted resellers and developers — but I'm resistant to making a closed "exclusive" culture. I value transparency and recognize the benefits. The sales team are insistent that exposing such detail is a bad thing for sales.
I know by posting in a community like Slashdot that I'm going to get a lot of support for my views, but I'm also interested in what people think about the viewpoint that such transparency could be bad thing.
We've been pumping out builds and publishing them as "Development Stream (Experimental / Unstable" and "Release Stream (Stable)", and this is visible on our support site to all. We had been also providing a link next to each build with the text showing the number of bugs fixed and the number of enhancements introduced, and the URL would take them to the Bugzilla list of issues for that milestone which were of type bug or enhancement.
This had been appreciated by our support and developer community, as they can readily see what issues are addressed and what new features have been introduced. Prior to us exposing our Bugzilla database publicly we produced a sanitized list of changes — which was time consuming to produce and I decided was unnecessary given we could just expose the "truth" with simple links to the Bugzilla search related to that milestone.
The sales and marketing team didn't like this. Their argument is that competitors use this against us to paint us as producers of buggy software. I argue that transparency is good, and beneficial — and whilst our competitors don't publish such information — but if we were to follow our competitors practices we simply follow them in the race to the bottom in terms of software quality and opaqueness.
In my opinion, transparency of software issues provides:
Identification of which release or build a certain issue is fixed.
Recognition that we are actively developing the software.
Incentive to improve quality controls as our "dirty laundry" is on display.
Information critical to 3rd party developers.
A projection of integrity and honesty.
I've yielded to the sales and marketing demands such that we no longer display the links next to each build for fixes and enhancements, and now publish "Development Stream (Experimental / Unstable" as simply "Development Stream") but I know what is coming next — a request to no longer make our Bugzilla database publicly accessible. I still have the Bugzilla database publicly exposed, but there is now only no longer the "click this link to see what we did in this build".
A compromise may be to make the Bugzilla database only visible to vetted resellers and developers — but I'm resistant to making a closed "exclusive" culture. I value transparency and recognize the benefits. The sales team are insistent that exposing such detail is a bad thing for sales.
I know by posting in a community like Slashdot that I'm going to get a lot of support for my views, but I'm also interested in what people think about the viewpoint that such transparency could be bad thing.
For a change - Sales and Marketing are right
Never EVER hang dirty laundry in public
You might want trusted tech users to see your bug tracker but no one else!
It will scare people who don't understand bug tracking and give your competitors easy shots
I would advocate for an issue tracker accesible to customers, but inaccesible otherwise. I think thats the way to get the best of both worlds.
If I were an existing customer, finding the bug tracking database suddenly closed to me would make me reconsider my relationship with you, even if I weren't doing third-party development. It would suggest to me that you have devalued customer input and want to make it more difficult for me to get support when I need it; this would be compounded if you offer paid support (since, by reducing my ability to troubleshoot on my own, you'd be driving me to your support services). I have dropped a vendor because of this.
Any _good_ sales or marketing team should be able to turn it around and show that this is actually a good thing and helps in getting more stable production software.
---
I second this. If your product is closed source and sold for profit, there is no reason to publicly put our your bugzilla.
As a Netsuite admin, I am fully aware of most of their issues through their private user forums as well as my own use. They provide "visibility" into bugs that you found and ones you request to be "attached" to. I feel this is a good approach. It shields the "problems" from management, competitors, and potential customers/investors about ongoing problems and how long they may take to be addressed.
Stop thinking like a developer. Look at this from an outside perspective. It's not flattering.
It really depends on who you target your product to if public bug database is a good or bad thing.
If you target people like developers they are more likely to view a public list as a very good thing and you will likely get more positive reaction than if you do not have such. If you target other types of people, then indeed public bug list will scare away potential customers way too often due to lack of understanding to be a good thing.
As you are in ERP I would say hide it is more likely harmful than beneficial. So, yes I would say make it nonpublic in general.
But as it is a good thing to help developers I would keep it visible to resellers and to any customer who wants to see it (maybe make a simple customer portal where they can log in and access it)
How can a developer have a frank discussion about the product's limitations when in a public forum? My feeling is you'd end up having to sanitize comments for public consumption or be self-censoring your real, honest opinions.
What about the trolls who will say "hey this has been filed for X years and still nobody fucking fixes it!?? FAIL!!" Who needs that kind of drama in a bug db.
Yes, open source organizations keep their bug DB public but it is a necessity for them and a different dynamic. Also worth mentioning that security bugs are private even for open source.
How can you be first to market when all your new ideas are available to any competitor via the bug DB?
The sales and marketing team didn't like this. Their argument is that competitors use this against us to paint us as producers of buggy software.
The competitors very well might do that. Going with an open development process always means handing the knife to your competitors in some extent. However, in your case, you could counter the effect with your own marketing, by boasting that you are fully committed to openness and are upfront about possible problems, unlike your sleazy competitors who swipe issues under the carpet. If you otherwise make quality software, I'm sure your customers would see value in that.
Since these are reported, but not necessarily fixed bugs, if someone is interesting in attacking one of your customers, you are giving them a gold mine of potential attack information. I believe in responsible disclosure, but it is one thing to tell your customers. Something else to tell the world, especially before it is fixed.
Ok, I give up, why you?
If Sales and Marketing say something you are doing is making their job harder, stop doing it and help them sell. Transparency is great: It helps everyone: Customers, Sales Prospects, Development and the Competition. Helping the cometition probably is much worse than the possible benefits received. My advice: Stay out of Sales and Marketing's business, it will be easier to tell them later to stay out of yours.
If your salesdroids can't turn that openness and transparency into an advantage, you have the wrong salesdroids. Anything can be marketed as a competitive advantage.
Hell, they should be pushing to prospects that you don't let bugs slip through the cracks. You get bug reports and post them for all to see, and you can't just ignore them in such an environment. That makes your product more robust, not less.
Disinfect the GNU General Public Virus!
I have karma to burn. tl;dr - Listen to sales or at the most only make it available to (developers working at) current customers
I'm the lead sales for an Australian ERP software outfit. For the last ten years, we have got an increasing number of competitors breathing down our throats, and the marketplace has become very crowded. Our market has very little vendor lock-in or product differentiation at this point.
One of our lead developers has made our bug tracking list public facing. This is making our life very difficult. Potential clients google our product and see a huge list of bugs. Just a few days ago a huge deal fell through because of this. Our potential customer was horrified that we can't handle dates correctly (it actually has a problem only after 10,400AD), or that the database gets corrupted sometimes (if someone sets of an EMP when data is being written).
When we bring this to our lead dev, he gets moral and claims we shouldn't be in a race-to-the-bottom with our competitors, while ignoring the prisoner's dilemma. Also, while other developers appreciate this transparency, the managers who have the authority to make purchase decisions are scared off by the bug list (and our competitors include our bug list in their sales pitch to scare our current and potential customers - "See? Everyone knows their bugs. It is only hours before you get hacked unless you switch to our product!!"). This is costing us a lot of money that we need to pay people like the lead dev.
We might even be willing to let developers working at our current customers view the bug list, since developers understand and appreciate this. But this lead dev is resistant to that as well. So how can we him to stop making our lives much harder than it already is?
Having access to bug tracking databases has resulted in me deciding not to use a product a couple of times, while it has encouraged me to use a product zero times. Having access to them gives you excellent insight into development priorities and developer attitudes toward customers. You can have a pretty high expectation that developer priorities are not your priorities as a customer. You can also have a pretty high expectation that your developers generally think customers are retarded. Neither of those things is particularly good to display on the Internet.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Assuming your customers are technically competent, allowing them access to the bug DB for bugs that might affect how they use or deploy your system is probably a good thing. On the other hand, access by competitors to your development plans is a bad thing (it's not always good for customers to have access to that, either). I don't know if bugzilla can do it, but what you really want is a way to mark bugs as internal or external, and allow customers (those who are registered and/or have a support contract) to search and view "external" bugs. If required, your sales and marketing folks can filter which bugs go from internal to external.
Cisco is a very notable example of this approach. Just about all bugs that might be seen by a customer are made available to customers who have an account with Cisco. Bugs found during development of new features and such are not exposed. Only a subset of the bug data is made available (not necessarily a good idea to expose names of developers, for example).
Thank you for showing us the problem.
Your firm is being undermined by a lazy and uncommitted sales force
with little appreciation for the kind of transparency that is involuntary
and with weak relationship-development skills
and with zero tact
and insufficient fear of the bullshit-detection abilities of a technical audience.
Your lead developer is a genius. Look what just happened.
..if they cannot sell in an atmosphere in which you are a trusted, open, and reliable partner. That is the most powerful position from which to sell.
Your problem here is lazy salesmen who don't want to be bothered dealing with the phoney issues the competition bring up - they just want an easy sell, or they are undertrained and scared salesmen who are afraid they don't know how to counter the phoney arguments....EVERY such issue is a selling point on trust that differentiates your company and your product from the competition. Your company is straight - the competition aren't, because they keep the truth hidden.
Can the sales people really prove that the openness is the reason why they can't win the sales? I doubt it very much - salesmen don't do numbers, don't do proof, it's all hearsay and presenting single anecdotes as universal truth.
And I say this because I was trained by the best, worked with the best, and sold software successfully when everything we sold was 15-20% more expensive that the competition - and we succeeded because we were trusted.
Your Plan B, if you can't get the bosses to back you: close Bugzilla to the public, open it to third-party and developers and (KEY IDEA) to the relevant IT staff at customers. You sales people MUST MUST MUST use the customer IT staff as recommenders - if they aren't, they are NOT doing their job properly.
"Cock Up Your Beaver" does not mean what you think. This sig is intended to clog filters and annoy do-gooders
proprietary software has been reinventing the wheel since people figured out you could build machines to count instead of people having to use math skills.
the rich get very rich off this planned obsolescence and reinvention process. those people rarely have morals or ethics.
case in point VR goggles. the idea of them is old, there are several ways to design and deploy these devices and yet the 'occulus rift' is just now coming out? i realize multi thousand dollar devices have been around, but most of them don't do what the rift will do, and none of them were able to use a ultra high def display device such as some cell phones are able to do.
secondly graphic processors which are on almost always 1-2 generations ahead of desktop processors. there is a gpu sitting in my desktop with 32 render output units. that is like a 32 core desktop chip and it has the speed and with gddr5 memory speeds to do what it needs to. it's not even the 64 ROPs of the top card. to even push my card to its limits requires 3 or more screens.
i realize graphics cards and desktop cpus are different markets, but the desktop chips always have some reason for scaling back performance while the gpus push a little. soon there may be an open hardware ASIC processor which at hash processing is way ahead of anything else on the market, and the little game the desktop and gpu makers are playing will all collapse as the chinese flood the market with open source asics the way they did with android tablets.
https://www.gnu.org/philosophy/free-sw.html
In competitive sales situations, each company has performed competitive analysis on the strengths and weaknesses of their competition's product. When talking to a customer, the sales team is emphasizing the problems of the competitor's product and the strength of their own. The customer is beating up the salesman by asking questions about the weaknesses of their product that were fed to the customer by the competing salesperson.
"It took them six years to fix these three simple bugs."
"It wasn't until release 4.5 before they found a critical security vulnerability that has probably been exploited since release 1.0."
"They decided not to fix these important problems in the current release and customers are going to have to wait another year for this functionality to work properly."
Helping your competition perform competitive analysis is a really good way to help your company go out of business. The benefit of transparency will be hugely outweighed by the savagery that will be perpetrated against your sales team. In fact, I wouldn't be surprised to see the sales team quit if this transparency continues.
Because car analogies are so hated on Slashdot, here's one:
If a dealer handed you a piece of paper listing 100 things mechanically wrong with one car and then offered a second car that they said verbally had nothing wrong with it, would you really buy the car that is documented to be broken in 100 ways or would you trust the dealer's word on the other car?
$5 / month hosted VPS on linux = awesome!
Even Atlassian, makers of the popular commercial JIRA bugtracker, maintain two layers of visibility. You can report and view bugs created by other users, but the decision-making process of Atlassian staff is kept hidden with private comments and private issues, to the point where is very hard to get an answer on whether a particular issue is actively being worked on or not.
As the maintainer of my company's bugtracker I can understand this position. It's all too easy for a developer to inadvertently reveal private intellectual property in a changelog, and I don't want to spend all my time monitoring and sanitising the public's view. It's easier to give the customers a separate space to natter away in.