Most Popular
1500 questions
56
votes
20 answers
Must developers understand the business domain or should the specification be sufficient?
I work for a company for which the domain is really difficult to understand because it is high technology in electronics, but this is applicable to any software development in a complex domain.
The application that I work on displays a lot of…

Jerome C.
- 229
56
votes
17 answers
How to deal with tautology in comments?
Sometimes I find myself in situations when the part of code that I am writing is (or seems to be) so self-evident that its name would be basically repeated as a comment:
class Example
{
///
/// The location of the update.
///…

Tamás Szelei
- 7,767
56
votes
15 answers
Date as software version number
Software developers don't typically use date as version number, though YYYYMMDD format (or its variances) looks solid enough to use. Is there anything wrong with that scheme? Or does it apply to limited 'types' of software only (like in-house…

Donotalo
- 1,219
56
votes
3 answers
Which is a better practice - helper methods as instance or static?
This question is subjective but I was just curious how most programmers approach this. The sample below is in pseudo-C# but this should apply to Java, C++, and other OOP languages as well.
Anyway, when writing helper methods in my classes, I tend to…

Ilian
- 663
56
votes
4 answers
Is there a chart for helping me decide between open-source licenses?
The Open Source Initiative lists 9 different licenses in their list of "License that are popular and widely used or with strong communities".
I want to license my project as open-source. Unfortunately, I do not speak legalese. Is there some chart I…

Oak
- 5,245
55
votes
11 answers
What are the best practices regarding unsigned ints?
I use unsigned ints everywhere, and I'm not sure if I should. This can be from database primary key id columns to counters, etc. If a number should never be negative, then I will always used an unsigned int.
However I notice from other's code that…

wting
- 1,034
- 2
- 9
- 12
55
votes
5 answers
Audiobooks for programmers?
I'm a programmer with a two-hour round trip commute to work each day. I'd like to fill some of that time with audiobooks about software development. Any audiobooks that would help me become a better programmer would be appreciated. I'm thinking…

Zoot
- 970
55
votes
10 answers
Are there any unions for software developers?
Why does Software Engineering not have union representation like other professional occupations, such as teaching? Are there any unions for software developers that exist and are successful?

Engineer2021
- 3,228
55
votes
17 answers
Is OO-programming really as important as hiring companies place it?
I am just finishing my masters degree (in computing) and applying for jobs. I've noticed many companies specifically ask for an understanding of object orientation. Popular interview questions are about inheritance, polymorphism, accessors etc.
Is…

ale
- 1,046
55
votes
10 answers
Why Should I Avoid Inline Scripting?
A knowledgeable friend recently looked at a website I helped launch, and commented something like "very cool site, shame about the inline scripting in the source code".
I'm definitely in a position to remove the inline scripting where it occurs; I'm…

thesunneversets
- 1,135
55
votes
5 answers
if ('constant' == $variable) vs. if ($variable == 'constant')
Lately, I've been working a lot in PHP and specifically within the WordPress framework. I'm noticing a lot of code in the form of:
if ( 1 == $options['postlink'] )
Where I would have expected to see:
if ( $options['postlink'] == 1 )
Is this a…

Tom Auger
- 847
55
votes
14 answers
Is it ever a good idea to hardcode values into our applications?
Is it ever a good idea to hardcode values into our applications? Or is it always the right thing to call these types of values dynamically in case they need to change?

Edward
- 2,159
55
votes
10 answers
Should a method validate its parameters?
Say you are designing a Square root method sqrt. Do you prefer to validate the parameter passed is not a negative number or do you leave it up to the caller to make sure the param passed is valid. How does your answer vary if the method/API is for…

Amit Wadhwa
- 1,962
55
votes
14 answers
Why are reproduction steps helpful for fixing software bugs?
Our company have a support team and a dev team. We require reproduction steps on every bug report, however sometimes the support team submit reports without and become frustrated when dev close them as "cannot reproduce / cannot fix".
Support then…

Chris
- 535
55
votes
11 answers
Is there a general solution to the problem of "sudden unexpected bursts of errors" in software?
Let me explain what I mean.
I have made a complex, highly polished over years PHP framework/library for my own use. I very aggressively log the smallest notice and immediately deal with it as soon as it pops ups, always trying to predict potential…

user379490
- 675