Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Hey, I'm a Junior Programmer working at a company.

I just found out that they've been releasing a debug build of their product to clients for the past four years because the release version is broken (and has been for several years).

My initial reaction was to be aghast, and I still am, but is this common? Is this not as big of an issue (both business and code-wise) as I think it is?

Thanks in advance for your answer, and apologies if I've tagged this wrong.

share|improve this question
1  
Wow, sometimes you have to pay extra for access to the checked or debug builds . . . –  Wyatt Barnett May 2 '11 at 22:12
add comment

migrated from stackoverflow.com May 2 '11 at 21:49

This question came from our site for professional and enthusiast programmers.

6 Answers

up vote 5 down vote accepted

IMO, somebody's first few years in an industry set an internal standard for what is acceptable and what isn't. I seriously question if working somewhere who a) doesn't know better and/or b) doesn't care, is good for your long term career.

I'd suggest alerting them to the problem (in a non-condescending manner) and if they don't make it a priority to fix it, start looking for a new job.

This is a management smell if you ask me.

share|improve this answer
add comment

As long as it's identified as a debug version (beta release, for example), then it's "ok". But I would think that after 4 years they would have figured it out. I don't think it's a good sign that this has been going on for so long.

share|improve this answer
add comment

Chris, Code definitely is not as efficient when running with debug symbols, however the degree to which it is slower may be negligible. It just depends on the code and what it's doing.

They probably should be running it with out symbols...thats definitely weird and not common practice.

share|improve this answer
1  
Thanks for the quick response! I've already ranted to them about it, but I have a feeling nothing's going to change unless I do it myself. –  Chris May 2 '11 at 21:08
2  
I can tell you that this mindset is relatively common in the software industry..unfortunately... –  Chris Kooken May 2 '11 at 21:09
add comment

While this is not even close to a good practice, the main purpose of a company is to make money (not to follow best practices.)

My recommendation would be to point out the areas in which fixing this problem could help make them more money. As far as I can see, those are mainly:

  1. The problem with building release may have other impacts which could cost money in unforeseen ways. It is better to have reliable code because it is cheaper to maintain and develop.
  2. Efficiency. The code will run faster and be smaller without debugging symbols.
  3. Less easy to reverse engineer / remove protections from.
  4. Less likely to look developmental (in terms of software development) disabled.

If they don't care about any of the reasons NOT to release debug code, why waste resource getting release to build? If you work for a profitable company, instead of an organization with zero profit motive, there needs to be some benefit to an action which will cost resources.

I hope this helps.

-Brian J. Stinar-

share|improve this answer
1  
Retarded shouldn't be used as a pejorative. –  Null Set May 2 '11 at 21:20
    
It's OK if one is insensitive. Joking –  Brian Stinar May 2 '11 at 22:39
    
@NullSet: What about stupid? idiotic? moronic? imbecilic? –  kevin cline May 3 '11 at 4:49
add comment

In my opinion this is a huge issue. It tells me that company doesn't understand how their software works and is relying on voodoo to make it work without understanding why it works or why it fails.

share|improve this answer
add comment

Sending a debug build out to clients is probably not a big deal - it would be worse to do this with a server-side component.

I'd be more worried about your company's inability to fix problems with the release build, despite having years to do so.

share|improve this answer
    
"It would be worse to do this with a server-side component." It is... I have the feeling I won't be here for long... :( –  Chris May 2 '11 at 21:29
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.