176
votes
20answers
165k views

When should you call yourself a senior developer? [duplicate]

Possible Duplicate: Whats the difference between Entry Level/Jr/Sr developers? I'm curious what senior developer means because apparently the definition doesn't mean what I thought it ...
81
votes
15answers
43k views

How can I really master a programming language?

I know that learning a language, you can simply buy a book, follow the examples, and whenever possible try the exercises. But what I'm really looking is how to master the language once you've learned ...
153
votes
20answers
162k views

When to favor ASP.NET WebForms over MVC

I know that Microsoft has said ASP.NET MVC is not a replacement for WebForms. And some developers say WebForms is faster to develop on than MVC. But I believe speed of coding comes down to ...
56
votes
18answers
50k views

In plain English, what is recursion?

The idea of recursion is not very common in real world. So, it seems a bit confusing to the novice programmers. Though, I guess, they become used to the concept gradually. So, what can be a nice ...
110
votes
10answers
86k views

How do you unit test private methods?

I am working on a java project. I am new to unit testing. What is the best way to unit test private methods in java classes?
47
votes
10answers
9k views

How can I quantify the amount of technical debt that exists in a project?

Does anyone know if there is some kind of tool to put a number on technical debt of a code base, as a kind of code metric? If not, is anyone aware of an algorithm or set of heuristics for it? If ...
24
votes
7answers
5k views

Should I keep investing into data structures and algorithms? [closed]

These days, I'm investing heavily in data structures and algorithms and trying to solve some programming puzzles. I'm trying to code and solve with Java and Clojure. Am I wasting my time? should I ...
33
votes
7answers
4k views

How to explain that it's hard to estimate the time required for a bigger software project?

I'm a junior developer and I find it hard to estimate how much time it takes to finish a bigger software project. I know how to structure the architecture in general, but it's hard for me to know what ...
85
votes
10answers
29k views

Why do most of us use 'i' as a loop counter variable?

Has anyone thought about why so many of us repeat this same pattern using the same variable names? for (int i = 0; i < foo; i++) { // ... } It seems most code I've ever looked at uses i, j, ...
62
votes
12answers
3k views

When is optimization not premature and therefore not evil?

"Premature optimization is root of all evil" is something almost all of us have heard/read. What I am curious what kind of optimization not premature, i.e. at every stage of software development (high ...
25
votes
7answers
52k views

Functional or non-functional requirement?

I'm wondering about functional or non-functional requirements. I have found lot of different definitions for those terms and I can't assign some of my requirement to proper category. I'm wondering ...
31
votes
16answers
5k views

Should you sacrifice code readability with how efficient code is? [closed]

Should you sacrifice code readability with how efficient code is? e.g. 3 lines of code into 1 line. I read in Code Craft by Pete Goodliffe that readability is key. Your thoughts?
28
votes
6answers
2k views

Getting users to write decent and useful bug reports

Does anyone know a good way to get users to write a semi-decent (read: useful) bug report? We wanted to put up something that would make sense to most users (be easy to read and understand), yet give ...
19
votes
6answers
3k views

git / other VCS - how often to commit? [duplicate]

I've been a programmer now for over 11 years, and am just starting to get into version control for real. The places I've worked at have never really used version control (one committed at the end of ...
18
votes
6answers
4k views

Can you change a license once you pick one?

I am working on a product that I don't feel is completely ready but I have a set of users that are very interested in using it now as "alpha" testers. I would like to give them the product now for ...
18
votes
0answers
2k views

What is the difference between software engineer and software developer? [duplicate]

Possible Duplicate: What are the key differences between software engineers and programmers? What is the difference between software engineer and software developer? In my previous company, ...
139
votes
19answers
139k views

Is there any reason to use C++ instead of C, Perl, Python, etc.? [closed]

As a Linux (server side) developer, I don't know where and why should I use C++. When I'm going for performance, the first and last choice is C. When "performance" isn't the main issue, programming ...
138
votes
12answers
22k views

Why does it matter that HTML and CSS are not programming languages?

Example here: What languages should I know if I'm interested in building web applications ? Yes, I understand that HTML and CSS are not Turing-complete. Yes, I understand that they are declarative, ...
118
votes
10answers
9k views

Should we define types for everything?

Recently I got into a problem with the readability of my code. I had a function that did an operation and returned a string representing the ID of this operation for future reference (a bit like ...
82
votes
5answers
18k views

Functional Programming vs. OOP [closed]

I've heard a lot of talk about using functional languages such as Haskell as of late. What are some of the big differences, pros and cons of functional programming vs. object-oriented programming?
106
votes
25answers
23k views

Are null references really a bad thing?

I've heard it said that the inclusion of null references in programming languages is the "billion dollar mistake". But why? Sure, they can cause NullReferenceExceptions, but so what? Any element of ...
55
votes
14answers
6k views

What's the most effective way to perform code reviews? [closed]

I've never found the ideal way to perform code reviews and yet often my customers require them. Each customer seems to do them in a different way and I've never felt satisfied in any of them. What ...
52
votes
4answers
30k views

Why should I prefer composition over inheritance?

I always read that composition is to be preferred over inheritance. A blog post on unlike minds, for example, advocates using composition over inheritance, but I can't see how polymorphism is ...
33
votes
4answers
7k views

As a sole developer (for now), how should I be using Git? [closed]

I have multiple projects on Git that I eventually want to bring others into. However, right now it's just me and I use Git and GitHub very simplistically: no branches and basically just using the ...
31
votes
12answers
5k views

How possible is it to estimate time for programming projects? [duplicate]

It seems like it is nearly impossible to get close because you could run into any number of issues and things not first anticipated. How close can we be expected to reasonably estimate? Our PM wants ...
39
votes
6answers
5k views

How do I prove or disprove “god” objects are wrong?

Problem Summary: Long story short, I inherited a code base and a development team I am not allowed to replace and the use of God Objects is a big issue. Going forward, I want to have us re-factor ...
78
votes
20answers
30k views

Should I bother to develop for JavaScript disabled? [duplicate]

Should I bother to develop for JavaScript disabled? I feel that my time is better spent developing for the majority.
37
votes
9answers
2k views

Prototyping vs. Clean Code at the early stages

I'm planning to work/start on a few personal projects that could end up as my daily job. It made me think, which way should I start? Just prototype—write just working basic code that could cost me ...
36
votes
6answers
26k views

Can a developer get a discount for Microsoft products? [closed]

If I would start to focus on the .NET platform and be self-employed, then I probably would like to have some Windows 7, Windows Server 2008, Visual Studio 2010 licenses just for the development ...
21
votes
3answers
1k views

Advice/guidelines for managing a distributed development team [duplicate]

What are some strategies, methodologies and best-practices for managing a distributed team? What can be done to encourage and enforce communication between the various team members? Is it possible ...
15
votes
2answers
848 views

Software Testing Techniques or Categories [closed]

What kinds of software testing do you know? I've heard about Test-Driven Development, Unit tests etc, but can't understand their importance and difference. For example, why are we using regression ...
10
votes
1answer
8k views

How to make a “git push” update files on your web host?

I have a few sites which are all hosted on the same web hosting service under shared hosting. My web host supports Git and I have SSH access to it, and I also have Git setup on my laptop as well. I ...
29
votes
4answers
9k views

Do you have to include a license notice with every source file?

I've been looking for various licenses that I can use for an open-source project of mine, but all of the projects that I've seen, with all kinds of licenses, appear to have a giant, obnoxious (in my ...
21
votes
11answers
5k views

Is it a really required skill to program without API documentation? [closed]

I barely passed my Java programming exam today. I had to answer some general questions about threading which I did well and to write a little threaded program which was worse. I had to connect my ...
17
votes
2answers
5k views

Using GPL libraries without modification on a commercial website, do I need to make my source code available? [duplicate]

If I write a public-facing commercial website, and use a GPL javascript library and/or binaries without modifying them (such as plupload), would I be required to make the source for my website ...
0
votes
1answer
3k views

How much do i need to learn in order to get an entry level asp.net job? [duplicate]

Possible Duplicate: If you develop with ASP.NET, which other technologies do you use? I'm currently learning C#, but I've noticed that there is a lot of demand for ASP.NET developers. I ...
3
votes
6answers
890 views

Is there a canonical book on Ruby on Rails? [closed]

I'm an experienced developer with .NET, and understand core computing concepts well (OOP, design patterns, etc) but would like to also learn rails. Is there a book out there that's the de-facto ...
18
votes
6answers
2k views

How do you go about training a replacement? [closed]

I recently asked about leaving a position and got a lot of great answers. One of the common threads was that being around to train the new person would be expected and could go a long way. Now ...
11
votes
3answers
3k views

what are the best tips for storing images in a database?

Is it appropriate to store the image files in the database? Or it would be better to store only the path of the file in the database, while keeping the file itself on the server? Are there any other ...
1
vote
2answers
3k views

What other reasons are there to write interfaces rather than abstract classes? [duplicate]

Possible Duplicate: When to use abstract classes instead of interfaces and extension methods in C#? When I read and looked at codes using Abstract classes, I was able to justify it because ...
172
votes
17answers
11k views

How do you balance between “do it right” and “do it ASAP” in your daily work? [closed]

I find myself pondering over this question from time to time, again and again. I want to do things the right way: to write clean, understandable and correct code that is easy to maintain. However, ...
149
votes
11answers
18k views

How do operating systems… run… without having an OS to run in?

I'm really curious right now. I'm a Python programmer, and this question just boggled me: You write an OS. How do you run it? It has to be run somehow, and that way is within another OS? How can an ...
57
votes
6answers
56k views

How should I determine my rates for writing custom software? [closed]

For a custom software that will likely take a year or more to develop, how would I go about determining what to charge as a consultant? I'm having a hard time coming up with a number, and searches ...
126
votes
17answers
36k views

Are #regions an antipattern or code smell?

C# allows the use of #region/#endregion keywords to make areas of code collapsible in the editor. Whenever I do this though I do it to hide large chunks of code that could probably be refactored into ...
89
votes
12answers
8k views

Best practices for sharing tiny snippets of code across projects

I always try to follow the DRY principle strictly at work; every time I've repeated code out of laziness it bites back later when I need to maintain that code in two places. But often I write small ...
60
votes
13answers
31k views

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 ...
66
votes
7answers
11k views

How to be a good citizen when crawling web sites?

I'm going to be developing some functionality that will crawl various public web sites and process/aggregate the data on them. Nothing sinister like looking for e-mail addresses - in fact it's ...
54
votes
1answer
16k views

MIT vs. BSD vs. Dual License

My understanding is that: MIT-licensed projects can be used/redistributed in BSD-licensed projects. BSD-licensed projects can be used/redistributed in MIT-licensed projects. The MIT and the BSD ...
38
votes
15answers
3k views

How would you design a programming language? [closed]

If you were to design a programming language, how would you do it? What features would you put in? What would you leave out? Statically or dynamically typed? Strongly or weakly typed? Compiled or ...
59
votes
10answers
10k views

(Why) is it important that a unit test not test dependencies?

I understand the value of automated testing and use it wherever the problem is well-specified enough that I can come up with good test cases. I've noticed, though, that some people here and on ...

15 30 50 per page