Project management is the discipline of planning, organizing, securing, and managing resources to achieve specific goals.

learn more… | top users | synonyms

318
votes
29answers
50k views

Why can't the IT industry deliver large, faultless projects quickly as in other industries?

After watching National Geographic's MegaStructures series, I was surprised how fast large projects are completed. Once the preliminary work (design, specifications, etc.) is done on paper, the ...
273
votes
20answers
63k views

How should I behave as a developer in a project that's headed for failure?

I am a developer in a 5-member team and I believe our project is headed for disaster. I'll describe why in a moment, but my question is: how should I behave? The deadline is in 1.5 months, and I ...
152
votes
14answers
9k views

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

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, ...
142
votes
29answers
10k views

Offshoring: does it ever work?

I know there has been a fair amount of discussion on here about outsourcing/offshoring, and the general opinion seems to be that at best it is difficult, and at worst it fails. I have direct ...
133
votes
18answers
8k views

How to keep a big and complex software product maintainable over the years?

I have been working as a software developer for many years now. It has been my experience that projects get more complex and unmaintainable as more developers get involved in the development of the ...
105
votes
18answers
25k views

Dealing with engineers that frequently leave their jobs

My friend is a project manager for a software company. The most frustrating thing for him is that his engineers frequently leave their jobs. The company works hard to recruit new engineers, transfer ...
100
votes
20answers
5k views

Project Manager that wants to lock in time estimate with a signed contract

At a previous employment, a project manager (PM) wasn't satisfied with the delivery time of the code on a project I was on. I was told by my project lead that that the PM was considering having me ...
97
votes
18answers
6k views

When should I make the first commit to source control?

I'm never sure when a project is far enough along to first commit to source control. I tend to put off committing until the project is 'framework-complete,' and I primarily commit features from then ...
86
votes
12answers
5k 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 ...
83
votes
10answers
6k views

Strategy for keeping secret info such as API keys out of source control?

I'm working on a website that will allow users to log in using OAuth credentials from the likes of Twitter, Google, etc. To do this, I have to register with these various providers and get a ...
81
votes
12answers
6k views

How big does my project need to be for me to unit test it? [closed]

I assume that my project is decoupled enough to allow for unit testing. But how big, exactly, in terms of clases and functions does my project need to be to make unit testing worthwhile? We all make ...
72
votes
14answers
5k views

How should a developer reject impossible requirements?

Here's the problem I'm facing: Quote From Project Manager: Hey Spark, I'm assigning you the task of developing a framework that could be used for many different iOS applications. Here are the ...
64
votes
14answers
8k views

How should I remember what I was doing and why on a project three months back?

I was working on a project three months back, and then suddenly another urgent project appeared and I was asked to shift my attention. Starting tomorrow, I'll be heading back to the old project. I ...
63
votes
14answers
14k views

What “version naming convention” do you use? [closed]

Are different version naming conventions suited to different projects? What do you use and why? Personally, I prefer a build number in hexadecimal (e.g 11BCF), this should be incremented very ...
63
votes
2answers
2k views

How do software projects go over budget and under-deliver? [closed]

I've come across this story quite a few times here in the UK: NHS Computer System Summary: We're spunking £12 Billion on some health software with barely anything working. I was sitting the office ...
60
votes
11answers
2k views

Best Practices for Handing over Legacy Code

In a couple of months a colleague will be moving on to a new project and I will be inheriting one of his projects. To prepare, I have already ordered Michael Feathers' Working Effectively with Legacy ...
59
votes
6answers
6k views

How to manage accidental complexity in software projects

When Murray Gell-Mann was asked how Richard Feynman managed to solve so many hard problems Gell-Mann responded that Feynman had an algorithm: Write down the problem. Think real hard. Write down the ...
57
votes
16answers
3k views

How to stop the development spec from changing in mid development?

Problem: It seems with almost every development effort I'm involved in, no matter how much time is spent planning prior to starting development, there is always a large amount of changes required ...
55
votes
14answers
3k views

Forbidding or controlling “Hidden IT…” Who should write and maintain ad-hoc software applications?

Bigger companies usually have the problem, that it is not possible to write all programs employees want (to save time and to optimize processes) due to a lack of staff and money. Then hidden programs ...
55
votes
19answers
3k views

Dealing with awful estimates

A recent project I worked on was proven to be severely underestimated by the architect. The estimate was out by at least 500%. Unfortunately I was brought onto the project after the estimate had ...
52
votes
18answers
3k views

Completing a project successfully despite hostile management? [closed]

I work for a subsidiary of a large world wide company. This was not a subsidiary from the beginning, it was a company bought by the larger company. We seem to be heading toward a death march and I'm ...
51
votes
9answers
7k views

How do you track what you and your team are working on day-to-day?

I'm struggling with how to keep track of what myself and people on my team actually do each day. I get a good broad picture by going over completed cards each week and stand-ups help a bit, but I feel ...
51
votes
5answers
5k views

Why do some big projects, like Git and Debian, only use a mailing list and not an issue tracker?

Bug tracker for any decent sized project seem like a bit of a no-brainer to me - it makes it really easy to organise hundreds or thousands issues, without issues colliding or getting mixed up. So ...
50
votes
7answers
3k views

Programming with a group of people I've never met

I've been assigned a group project from my AP computer science class, and I am required to work with three other people. I've never talked to them before, I have no idea their skill level, and all I ...
49
votes
5answers
2k views

Bug reopen vs. new

A bug was opened, fixed, verified and closed. A month later, it showed up again in a subsequent version after several iterations without any regression. Provided the bug characteristics are the same, ...
49
votes
4answers
2k views

How to explain to a non-technical person why the task will take much longer than they think?

Almost every developer has to answer questions from business side like: Why is going to take 2 days to add this simple contact form? When a developer estimates this task, they may divide it into ...
48
votes
11answers
7k views

Metric by which to hold developers accountable [duplicate]

I asked a question on lines of code per hour and got torn a new one. So my matured follow-up question is this: If not lines of code, then what is a good metric by which to measure (by the ...
47
votes
9answers
8k views

Why is programming sometimes viewed as a second-rate role? [closed]

I've been a programmer for most of my life. I recently interviewed for a management job in a company and the interviewer looked at my CV asked me "How do we know you're not just a programmer". Which ...
46
votes
9answers
5k views

Generally speaking, is it better to make all the functional parts or get UI working first - or a mix of the two?

Generally speaking, is it better to make all the functional parts or get UI working first - or a mix of the two? Assuming you're working on something large, is it generally accepted practice to get ...
42
votes
10answers
2k views

How to start and maintain an after-work project

I work as a full time developer. My workplace, however, is very limiting in the technologies and programming languages I can use. All of the work is done in C++. It is clear that C++ is rapidly ...
41
votes
10answers
2k views

Is it a good idea to schedule regular time to clean up code? [closed]

I'm managing a small team of developers. Every so often we decide we're going to spend a day or two to clean up our code. Would it be a good idea to schedule regular time, say 1 week every 2 months, ...
41
votes
14answers
3k views

How important is it to finish projects?

I'm a student (yet to go to uni) and I've been programming for about 5 years now. Over that time, I've flitted around from language to language, from API to API, and project to project. I've tried ...
41
votes
7answers
17k views

How to manage github issues for (priority, etc)? [closed]

I'm new to github, and am looking for advice on how to manage issues. I'm used to having priority and other ordering options but see that none exist. How do others manages issues during the ...
36
votes
14answers
2k views

Do most companies not know how to write software?

If you're an active reader here, try to think about how many times you've heard (and even agreed) when someone here has told someone else to start looking for a new job. Personally, I've seen it a lot ...
36
votes
9answers
2k views

How do you price your work?

Well, let me explain : This has really been an issue for me, for such a long time. And what is worse - since coding is something I simply ADORE (I would definitely do it, even if there was no payment ...
35
votes
5answers
6k views

How do I succeed as a lead developer?

I have become the lead developer in a particular project, but I'm having difficulty focusing on the big picture and making sure all pieces of the project are covered. What should I keep in mind when ...
35
votes
8answers
13k views

Should Git be used for documentation and project management? Should the code be in a separate repository?

I'm starting up a Git repository for a group project. Does it make sense to store documents in the same Git repository as code - it seems like this conflicts with the nature of the git revision flow. ...
34
votes
29answers
2k views

What issues carry the highest risk in a software project?

Clearly, software projects are different from other industries in terms of many things like for instance, quality assurance, project progress measurement, and many other things. Unique ...
33
votes
7answers
2k views

Is rotating developers on a project a good or bad idea?

I'm working on a small team that will begin working on a large new project with another small team. The other team is currently working on a legacy system that they have been working on for years. ...
32
votes
19answers
2k views

What do you say in a code review when the other person built an over complicated solution? [closed]

The other day I reviewed code someone on my team wrote. The solution wasn't fully functional and the design was way over complicated-- meaning stored unnecessary information, built unnecessary ...
32
votes
9answers
1k views

How do I overcome paralysis by analysis when coding?

When I start a new project, I often times immediately start thinking about the details of implementation. "Where am I gonna put the DataBaseHandler? How should I use it? Should classes that want to ...
31
votes
13answers
5k views

Why and for what reasons developers may not like “daily scrum”? [closed]

There are advantages in holding daily scrum, like: Team get coordinated with each other Everyone knows what amount of task has been done Burndown chart gets more and more complete Task board is ...
31
votes
10answers
3k views

Are these signs of a bad developer? [closed]

I used to blame changing specifications from clients for code rot, not realising that business models do change and it's my job to develop in an adaptable way. I now see that as a sign of a bad ...
31
votes
9answers
2k views

How to reply to incomplete requests from potential customers? [duplicate]

Working as a freelancer, I receive many weird, invalid or incomplete requests from the actual or potential customers. The most frequent case is this one: Hi, I need a website where people can ...
31
votes
12answers
3k 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 ...
31
votes
4answers
9k views

Developing a feature which sole purpose to be taken out?

What is the name of the pattern in which individual contributors (programmers/designers) developed an artifact for the sole purpose is to serve as a diversion so that management can remove that ...
30
votes
21answers
3k views

Why do large IT projects tend to fail or have big cost/schedule overruns? [duplicate]

I always read about large scale transformation or integration project that are total or almost total disaster. Even if they somehow manage to succeed the cost and schedule blow out is enormous. What ...
30
votes
20answers
5k views

Is it normal for programmer to work on multiple projects simultaneously

On a current job I have 2 projects to work on. First is very huge system and the second one is smaller but it also big (first project is being developed for 12 years, second for 4 years). At first I ...
30
votes
14answers
766 views

Boss doesn't believe my time estimate… advice/backup? [duplicate]

I'm working at a startup software company -- 3 developers, less than 15 employees including the CEO. We deal exclusively with Windows Mobile, the .NET CF, and passing the information gathered from our ...
30
votes
7answers
5k views

What is the role of traditional issue tracker when Scrum / Kanban board is used?

From a very high level view, to me it seems there are generally 2 types of Project Management tools: Traditional issue trackers like Fogbugz, JIRA, BugZilla, Trac, Redmine etc. Virtual card boards / ...