65 votes
Accepted

Is there marginal benefit in fixing bugs

From a business perspective, a bug fix is no different than a feature request. It has a certain cost in development time, and it has a certain value for customers. If a bug is non-critical, it can ...
user avatar
  • 54.8k
48 votes
Accepted

How to make significant technical decisions given very little time

If all you have is 2 days and no time to prototype or even read upon all the alternatives then there's really only 2 options: ask someone who knows and follow their advice. This may not necessarily ...
user avatar
  • 48k
19 votes

How to make significant technical decisions given very little time

It may seem that I am going against the stream, but I have recently read the book Creativity, Inc. by Ed Catmull and there was a really nice paragraph tackling this situation: Andrew Stanton spoke ...
user avatar
  • 321
19 votes
Accepted

What to do when critical functionality of a dependency is broken and impedes development?

This is one of the reasons you're using open-source software, right? You could make the very same argument for "what happens if my very expensive, proprietary, closed-source library suddenly falls ...
user avatar
14 votes
Accepted

How do I feel more productive after programming?

Assimilating the job of a programmer to coding is reductive. Your goal is not to write code, but to solve a given problem—usually through code, but not only code. Once you have a set of requirements, ...
user avatar
11 votes

What to do when critical functionality of a dependency is broken and impedes development?

The solution to developing applications where bugs or lack of features have a high risk of causing your work to stop is to not use high risk libraries. Boring and lame, I know.. You said this is an ...
user avatar
  • 12k
11 votes

How much detail to put into first iteration of project?

All software design and coding concepts and patterns arise in response to some problem. The pattern or concept is a solution to that problem. Over time, some patterns become "well-known" as ...
user avatar
11 votes

Is there marginal benefit in fixing bugs

Here is a good reference http://www.joelonsoftware.com/articles/fog0000000043.html Do you fix bugs before writing new code? The very first version of Microsoft Word for Windows was considered a “...
user avatar
  • 3,456
10 votes
Accepted

How much detail to put into first iteration of project?

There is no single answer, as this depends entirely on the project. We need to think about two things here. What is your eventual target? How do you expect to get there? End Result Are you ...
user avatar
10 votes

How to make significant technical decisions given very little time

gbjbaanb makes some very good points. I just thought I'd add a bit. It's obvious you don't have enough time to make a perfectly informed decision. Your only option is to try and make a decision ...
user avatar
  • 11.5k
10 votes

Frustrating on time tracking

While I agree with Thomas Owens answer, I think this needs a more strongly worded answer. The process you describe is completely missing some of the most important parts of agile management and these ...
user avatar
  • 22.1k
9 votes

API design dilemma: to REST or not to REST

For passwords, sending a hash copy of the password would seem to be your best alternative. Notice that this avoids two of the problems you are considering: the hash of the password disguises the "...
user avatar
9 votes

API design dilemma: to REST or not to REST

GET http://api.example.com/users?usr=username The returned JSON object would contain all the fields for the user (id, password, etc), so I could check the password in the client. ...
user avatar
  • 5,413
9 votes
Accepted

Frustrating on time tracking

Your company isn't following standard agile practices. The developers should be the one estimating, in whatever units you use (hours or Story Points or something else). If you are doing the work, you ...
user avatar
  • 76.3k
6 votes

API design dilemma: to REST or not to REST

Typically your REST API should not support login functionality at all. Just require the caller to provide a bearer token from a trusted issuer in the Authorization header and be done with it. Use a ...
user avatar
  • 831
6 votes

How to respond when you are asked for an estimate?

I always end up giving estimates that I later realize I cannot fulfill. It has happened countless of times, and I always promise it won't happen again. It sounds like you're being asked for a ...
user avatar
5 votes

How to make significant technical decisions given very little time

Since they've effectively given you little time to do more than pick candidates out of a hat, I'd adopt the following approach. Select technologies that: Have a large user base Have active support (...
user avatar
  • 9,627
5 votes

How do you set a reasonable time-limit on some exploratory mission?

You must distinguish two different questions here. How much time is necessary to understand and deal with the old code base? That is hard to predict and largely out of your control. You can only make ...
user avatar
4 votes

How much detail to put into first iteration of project?

There is a very simple and practical approach to this, which works for a wide range of small to medium size projects. Even though it probably won't work well for Mars Explorers. First, work out what ...
user avatar
  • 546
4 votes
Accepted

Is it reliable to use and download libraries needed from GitHub and copy-pasting codes in order to increase productivity?

Of course - it's not very effective to reinvent the wheel. If someone else has already solved the problem and made it freely available, why not take advantage of that? However, that road is full of ...
user avatar
4 votes

How to make significant technical decisions given very little time

2 days is a very short period for making that kind of decision, but since you have to do it in 2 days list following, What are the target platforms What are the custom / third party components used ...
user avatar
4 votes

When to fix something that is "wrong" but works fine

A simple fix would be to replace the internals of your wrapper to use Threadlocal. So the format() changes from: private DecimalFormat format = new ...; private final Object lock = new Object(); ...
user avatar
4 votes

How to make significant technical decisions given very little time

As much as I like to learn and experiment new stuff, under time constraints the best option is always to go for whatever is or feels more comfortable to work with. Stick to what you know. Even if in ...
user avatar
  • 1,071
3 votes
Accepted

API design dilemma: to REST or not to REST

First of all, let me say that I agree 100% with @MvdD, that a REST API should not include login/logout semantics. However, as I'm sure you've heard/read OAuth is a headache you really don't want if ...
user avatar
3 votes

How to set more accurate "deadlines"?

>Are there techniques that can be used to better estimate how long a project can take to complete ? The problems that you are having aren't due to your estimating ability at all. The issue is that ...
user avatar
  • 4,274
3 votes

Is there marginal benefit in fixing bugs

In an effort to convince our product owner about this concept, I could not find any good resources. Assuming you're working for a commercial organisation, there will surely be someone there who is ...
user avatar
  • 2,107
3 votes

Percentage of time of an evaluation used to perform the evaluation

Consider the estimation process: what happens when management asks, "How long will it take?" The amount of time spent doing time estimates depends entirely on how accurate and reliable those ...
user avatar
3 votes

In which order perform tasks from big backlog

One of the most important things to do with a backlog is groom it. You should go through the backlog and prioritize the tasks. It can seem overwhelming when the backlog grows faster then it gets ...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible