Most Popular
1500 questions
82
votes
11 answers
Is DRY the enemy of software project management?
One of the most basic and widely accepted principles of software development is DRY (don't repeat yourself). It is also clear that most software projects require some kind of management.
Now what are the tasks that are easy to manage (estimate,…
Frank Puffer
- 6,429
82
votes
7 answers
Should temporary files be saved to /tmp or the current working directory?
I have a program that needs to generate temporary files. It is written for cluster machines.
If I saved those files to a system-wide temporary directory (eg: /tmp), some users complained the program failed because they didn't have proper access to…
SmallChess
- 1,176
- 1
- 8
- 13
82
votes
5 answers
Is Python Interpreted or Compiled?
This is just a wondering I had while reading about interpreted and compiled languages.
Ruby is no doubt an interpreted language since the source code is processed by an interpreter at the point of execution.
On the contrary C is a compiled…
crodjer
- 1,039
82
votes
10 answers
Why do C arrays not keep track of their length?
What was the reasoning behind not explicitly storing an array's length with an array in C?
The way I see it, there are overwhelming reasons to do so but not very many in support of the standard (C89). For instance:
Having length available in a…
VF1
- 1,891
82
votes
6 answers
Service layer vs DAO -- Why both?
I have been working with SpringMVC, Hibernate, and some databases in a java web application example.
There are a few different ones that do this, but this Spring 3 and hibernate integration tutorial with example has a model class, view (in jsp), and…
Jeff
- 1,854
82
votes
6 answers
At what point/range is a code file too big?
I'm finding lots of 2-3k line files, and it doesn't really feel like they should be that big.
What is a good criteria to objectively call a source code file "too big"?, is there such thing as a maximum amount of lines a source code file should…
dukeofgaming
- 13,973
82
votes
8 answers
What is the relevance of resumes in the age of GitHub, Stack Exchange, Coursera, Udacity, blogs, etc.?
My resume is no longer relevant. It can no longer contain an adequate description of my technical abilities. One can get a much better sense of what I am capable of by looking at my GitHub repositories, my Stack Exchange profiles, and the various…
user7146
82
votes
12 answers
What's the benefit of object-oriented programming over procedural programming?
I'm trying to understand the difference between procedural languages like C and object-oriented languages like C++. I've never used C++, but I've been discussing with my friends on how to differentiate the two.
I've been told C++ has object-oriented…
niko
- 2,119
- 4
- 22
- 19
81
votes
16 answers
How do I deal with analysis paralysis?
Very frequently, I am stuck when choosing the best design decision. Even for small details, such as function definitions, control flow, and variable names, I spend unusually long periods perusing the benefits and trade-offs of my choices.
I feel…
Anne Nonimus
- 979
81
votes
3 answers
What are DRY, KISS, SOLID, etc. classified as?
Is something like DRY a design pattern, a methodology, or something in between? They do not have specific implementations that could neccessarily be demonstrated(even if you can easily demonstrate a case NOT using something like KISS... see The…
Morgan Herlocker
- 12,742
81
votes
12 answers
Do you spend your working hours on learning?
Do you spend your working hours learning new stuff, reading tech blogs, books on programming etc.? What's your opinion on it? Can an employer have benefits allowing developers to spend about 1-1.5 hrs a day on learning. Will it be repaid in future…
make_sense
- 1,137
- 8
- 12
81
votes
9 answers
How do huge open source libraries get maintained while having code far from "clean code" practices?
I'm still inexperienced to write high quality code, so I read books addressing the issue such as Clean Code by Robert C. Martin, and keep checking code of well-known libraries to improve my skills.
Although many open source libraries have been…
Islam Salah
- 907
81
votes
9 answers
How can I make a call with a boolean clearer? Boolean Trap
As noted by in the comments by @benjamin-gruenbaum this is called the Boolean trap:
Say I have a function like this
UpdateRow(var item, bool externalCall);
and in my controller, that value for externalCall will always be TRUE. What is the best way…
Mario Garcia
- 813
81
votes
12 answers
SQL: empty string vs NULL value
I know this subject is a bit controversial and there are a lot of various articles/opinions floating around the internet. Unfortunatelly, most of them assume the person doesn't know what the difference between NULL and empty string is. So they tell…
Jacek Prucia
- 2,264
81
votes
10 answers
Dealing with failed sprints and deadlines
Many Scrum books and articles say that a failed sprint (when the team fails to complete some features from the Sprint Backlog) is not something that bad, it happens from time to time, and it can actually be useful if the team learns from their…
Andre Borges
- 1,534