All Questions
61,236
questions
166
votes
111
answers
34k
views
Are there any famous one-man-army programmers?
Lately I have been learning of more and more programmers who think that if they were working alone, they would be faster and would deliver more quality. Usually that feeling is attached to a feeling ...
12
votes
6
answers
802
views
Best permissive license for a utility library?
I have a small utility library of useful stuff written in Java that I plan on releasing open source. I've been wavering on what license to use. I quite like the BSD license, which is short and easy ...
49
votes
28
answers
14k
views
When is it reasonable to create my own programming language?
Are there types of killer applications, classes of algorithmic problems, etc., where it is better, in the long run, to create my own language?
PS: Just to be sure, I mean a new programming language ...
31
votes
24
answers
20k
views
What to bring to a programming interview? [closed]
I have just completed my Master's degree in Computer Science and have gotten my first job interview as a developer. I do not have much experience in large scale development projects, but I am hoping ...
11
votes
14
answers
2k
views
Should I worry about 'Javascript piracy'?
If I write a client-side Javascript app (with a little bit of server interaction), how can I prevent people from copying the Javascript files to their own site? Should I, at all?
23
votes
14
answers
3k
views
How managers choose programming languages
It's not a secret to anyone that managers can and often will impose the programming language that will be used for a project.
Being a programmer myself, I have never been able to understand this.
...
27
votes
3
answers
1k
views
Forking an open source project nicely
It's time.
You've worked long and hard to add your vision to the open source project you love, on which you've worked, debated, and to which you've contributed inestimable amounts of code and insight....
15
votes
16
answers
2k
views
What Things are Most Conducive to a Productive Programming Environment? [closed]
Many of us have worked in multiple environments over the years, and have found that some are more productive than others. In many cases, it's not directly related to the abilities of the developers, ...
86
votes
19
answers
67k
views
Why isn't OCaml more popular?
I've always heard that C is the language of choice to use for embedded systems, or anything that needs to run at maximum speed. I never developed a fondness for C, mostly because I don't like pointer ...
18
votes
11
answers
14k
views
Reasons to Use a VM For Development [duplicate]
Background:
I work at a start-up company, where one team uses Virtual Machines to connect to a remote server to do their development, and another team (the team I'm on) uses local IIS/SQL Server 2005/...
112
votes
39
answers
100k
views
Why are zero-based arrays the norm?
A question asked here reminded me of a discussion I had with a fellow programmer. He argued that zero-based arrays should be replaced with one-based arrays since arrays being zero-based is an ...
33
votes
10
answers
4k
views
Reaching Intermediate Programming Status [closed]
I am a software engineer that's had positions programming in VBA (though I dare not consider that 'real' experience, as it was trial and error!), Perl w/ CGI, C#, and ASP.NET. The latter two are post-...
135
votes
12
answers
154k
views
How to recognize a good programmer? [closed]
Our company is looking for new programmers. And here comes the problem - there are many developers who look really great at the interview, seem to know the technology you need and have a good job ...
42
votes
6
answers
9k
views
Methodology for documenting existing code base
I work as part of a team on an existing application that has no inline documentation, nor does it have technical documentation. As I've been working on various bug reports on the application, I've ...
82
votes
18
answers
10k
views
What is the best way to discern an excellent programmer in a job interview?
In the setting of an interview: What is the best way to reliably identify when somebody is an excellent programmer. By this I mean he is one of those that is 10-15 times more efficient / rapid / ...
82
votes
16
answers
41k
views
Best Development Methodology for One Person?
I spend a lot of time working on projects in which I am the sole developer, project manager, designer, QT person (Yes, I know... Bad!), and sometimes I'm even the client.
I've tried just about ...
273
votes
17
answers
89k
views
Is premature optimization really the root of all evil?
A colleague of mine today committed a class called ThreadLocalFormat, which basically moved instances of Java Format classes into a thread local, since they are not thread safe and "relatively ...
16
votes
16
answers
22k
views
Is software development an engineering discipline?
Can software development be considered engineering? If no, what are the things that it lacks in order to be qualified as an engineering discipline? Related to this is this question on Stack Overflow ...
109
votes
20
answers
71k
views
Making money with Open Source as a developer?
I'm currently a student (Applied Information Technology) and we do most of our programming in C# and Java. I was wondering how can I as a developer, make money with open source. I know there is the ...
60
votes
14
answers
266k
views
What is the history of the use of "foo" and "bar" in source code examples?
Why do many code examples, especially tutorials, use the names "Foo" and "Bar" so often? It is almost a standard.
For example:
void foo(char* bar) {
printf("%s", bar);
}
59
votes
93
answers
13k
views
What do you consider the 1st principle(s) of programming?
I always liked to ask myself "what's the first principle(s) of this?" after I learned the basic stuff of something (e.g. programming). It's an inspiring question, IMO, that can force you to think ...
34
votes
7
answers
27k
views
Define "production-ready"
I have been curious about this for a while. What exactly is meant by "production-ready" or its variants? Most recently I was looking for information about sqlite and found this thread, where many ...
119
votes
4
answers
69k
views
Difference between Dependency Injection (DI) and Inversion of Control (IOC)
I've been seeing a lot of references of Dependency Injection (DI) & Inversion Of Control (IOC), but I don't really know if there is a difference between them or not.
I would like to start using ...
123
votes
36
answers
60k
views
Programming with ADD/ADHD [closed]
I have diagnosed ADD. Mild but enough to affect my work:
Easily distracted
Can't concentrate on one project at a time
Addicted to the web
Procrastination
etc.
What strategies do you use to ...
245
votes
174
answers
23k
views
What should every programmer know?
Regardless of programming language(s) or operating system(s) used or the environment they develop for, what should every programmer know?
Some background:
I'm interested in becoming the best ...
257
votes
137
answers
7k
views
Perks for new programmers
I intend on hiring 2-3 junior programmers right out of college. Aside from cash, what is the most important perk for a young programmer? Is it games at work? I want to be creative... I want some ...
876
votes
360
answers
242k
views
What is the single most effective thing you did to improve your programming skills?
Looking back at my career and life as a programmer, there were plenty of different ways I improved my programming skills - reading code, writing code, reading books, listening to podcasts, watching ...
2185
votes
1
answer
476k
views
What technical details should a programmer of a web application consider before making the site public?
What things should a programmer implementing the technical details of a web application consider before making the site public? If Jeff Atwood can forget about HttpOnly cookies, sitemaps, and cross-...
65
votes
36
answers
11k
views
What can I do to get better at estimating how long projects are going to take? [duplicate]
I don't want to make life hard for management. I really don't. They're nice enough guys, but every time I am assigned a new project or task and get asked "how long do you think it will take to do ...
55
votes
14
answers
12k
views
Effective Ways to Introduce Agile into the Workplace?
In your experience (anecdotal or otherwise), what are some effective ways to introduce Agile into a non-Agile organization or company?
UPDATED: Can anyone speak to cases where you tried to introduce ...
301
votes
38
answers
97k
views
How Can I Know Whether I Am a Good Programmer?
Like most people, I think of myself as being a bit above average in my field. I get paid well, I've gotten promotions, and I've never had a real problem getting good references or getting a job.
But ...
68
votes
5
answers
26k
views
What is inversion of control, and when should I use it?
I am designing a new system and I want to know what inversion of control (IOC) is, and more importantly, when to use it.
Does it have to be implemented with interfaces or can be done with classes?
78
votes
67
answers
263k
views
Do you have to be good at math to be a good programmer? [closed]
It seems that conventional wisdom suggests that good programmers are also good at math. Or that the two are somehow intrinsically linked. Many programming books I have read provide many examples that ...
12
votes
6
answers
453
views
How do you create a software process for a project?
As I've written about in other questions here, the project that I'm working on now has no software process. That means no documentation (including hard copy requirements or specification), no source ...
108
votes
25
answers
36k
views
How far should one take e-mail address validation?
I'm wondering how far people should take the validation of e-mail address. My field is primarily web-development, but this applies anywhere.
I've seen a few approaches:
simply checking if there is ...
14
votes
12
answers
3k
views
Are type and scope prefixes worthwhile naming conventions?
Recently starting my first job as a software developer, I was a little thrown to be told that I did not have to follow any naming conventions in my code. Code written by groups working on other, ...