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

learn more… | top users | synonyms

471
votes
19answers
143k views

I've inherited 200K lines of spaghetti code — what now?

I hope this isn't too general of a question; I could really use some seasoned advice. I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 ...
363
votes
29answers
57k 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 ...
297
votes
20answers
66k 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 ...
173
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, ...
153
votes
31answers
24k views

Is it unusual for a small company (15 developers) not to use managed source/version control? [closed]

It's not really a technical question, but there are several other questions here about source control and best practice. The company I work for (which will remain anonymous) uses a network share to ...
153
votes
11answers
28k 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 super-...
139
votes
18answers
11k 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 ...
126
votes
27answers
8k views

What are the worst false economies in software development? [closed]

What are the worst false economies (that is ways of saving money that ultimately cost more than they save) prevalent in the software industry and how do you combat them?
110
votes
18answers
9k 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 ...
108
votes
18answers
28k views

Dealing with engineers that frequently leave their jobs [closed]

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 ...
106
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 ...
90
votes
12answers
9k 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 ...
86
votes
13answers
39k 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 ...
85
votes
12answers
7k 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 ...
80
votes
20answers
24k views

How do you handle your Project Manager

I currently work for a company that has recently downsized. I do all in-house work, client installs, builds, QA, and, well, basically all the in-house work. My direct boss is VERY nontechnical and ...
70
votes
11answers
5k views

Advice on designing web application with a 40+ year lifetime

Scenario Currently, I am apart of a health care project whose main requirement is to capture data with unknown attributes using user generated forms by health care providers. The second requirement ...
70
votes
15answers
6k views

How should a developer reject impossible requirements? [closed]

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 ...
69
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 ...
68
votes
6answers
7k 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 ...
66
votes
12answers
6k views

Getting non-programmers to understand the development process

When starting a project for a company that's not primarily a programming company, one of the expectations is that there's a finished product at the end free of all bugs and does everything needed ...
60
votes
11answers
3k 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
16answers
11k views

why do some job posts say “high pressure environment”? [closed]

Why would there be any pressure if everyone knows what they are doing and the projects are accurately estimated? If there's pressure, or even high pressure, then it implies what they are currently ...
59
votes
9answers
10k 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 ...
59
votes
16answers
4k 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 ...
59
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 ...
59
votes
6answers
6k views

Why aren't there code overviews for open-source projects? [closed]

There are very complex open source projects out there, and to some of them I think I could make some contributions, and I wish I could, but the barrier to entry is too high for a single reason: for ...
58
votes
11answers
14k 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 hour/day/...
56
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 ...
56
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 ...
52
votes
5answers
3k 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, ...
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 ...
50
votes
7answers
4k 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 ...
50
votes
8answers
7k views

Is it good that testers are competing to see who opens more bugs?

I'm a software developer. There is a team of testers who follow and run test cases written by the analyst, but also perform exploratory testing. It seems like the testers have been competing to see ...
50
votes
6answers
30k 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 ...
49
votes
13answers
3k views

*Code owner* system: is it an efficient way? [closed]

There is a new developer in our team. An agile methodology is in use at our company. But the developer has another experience: he considers that particular parts of the code must be assigned to ...
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 ...
45
votes
9answers
8k views

Is having fixed delivery dates for elements an “Agile” way of working?

We keep being told we are going to be working in an agile way on a new project by senior management. They have set up stand-ups, sprint planning, retrospectives etc. etc. However, they have now come ...
45
votes
9answers
25k 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. ...
44
votes
5answers
9k 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 ...
44
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 ...
43
votes
3answers
4k views

What happens if a feature merged into develop is postponed by management?

We recently had a problem whereby a feature for our webapp (automatic signup) was postponed by management because they felt the start was too "cold" but they wanted all the other features we had been ...
42
votes
10answers
3k 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, ...
42
votes
14answers
4k views

How important is it to finish projects? [closed]

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 ...
40
votes
20answers
9k views

What are the steps in beginning a large project, when all I have is a big idea? [closed]

I am computer engineering student. I've been thinking about how I can handle a big project. What should be my first step to reach my goal in a more efficient and effective way? When I come up with a ...
40
votes
4answers
3k views

What to do with abandoned issues in GitHub?

If someone opens an issue on GitHub but more information to reproduce the error is asked and never given, what's the normal procedure? Example. Here the author states that the "nav breaks". While I ...
40
votes
4answers
13k views

Developing a feature which sole purpose to be taken out? [closed]

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 ...
39
votes
13answers
7k 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 ...
39
votes
11answers
12k views

How often should I/do you make commits? [duplicate]

I am a recent (as of yesterday) college grad - BS in Computer Science. I've been a huge fan of version control ever since I got mad at an assignment I was working on and just started from scratch, ...
36
votes
7answers
3k 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. ...
35
votes
5answers
3k views

How do you convince management to “invest” in unit tests?

How did you convince your manager to let you unit test? By "use", I mean being allowed to develop, check-in to source control and maintain the unit tests over time, etc. Typical management ...