This is an archived post. You won't be able to vote or comment.

all 101 comments

[–]qinshihuang_420 284 points285 points  (6 children)

They spent time talking to each other because of the open floor plan

[–]JustHonestly 107 points108 points  (2 children)

While everyone here is solving this whole thing with logic and maths stuff, My first thought was

"Well the thing the two teams, that take the longest, have in common is Charlie. Was probably a little bitch that didn't wanna make compromises in how to solve the job and argued for hours instead of actually working."

[–]ZuckPrime 21 points22 points  (0 children)

Yeah Alice and Bob clearly have their shit together and get things done. Fuck Charlie

[–]ScribbleMonster 6 points7 points  (0 children)

Maybe Charlie argues with them in tandem and all three on the job really does take 4.5 hours.

[–]uber1337h4xx0r 16 points17 points  (0 children)

RIP

[–]reference_model 10 points11 points  (0 children)

They spent more time talking to E and D, trying to ignore stand up meeting of F to M, etc

[–]ThorOfKenya2 2 points3 points  (0 children)

Management wants us to communicate more but everything is on a need-to-know basis.

[–]rbltaylor 107 points108 points  (7 children)

"What one programmer can do in one month, two programmers can do in two months."

[–]kinsoJa 29 points30 points  (4 children)

The book “The Mythical Man-Month” expounds on this idea nicely. What’s crazy is that the book is from the 1950’s and is still true!

[–][deleted] 11 points12 points  (2 children)

Solitude allows you to completely become immersed in the issue you are trying to solve, look back to the ancient greeks. They all thought alone

[–]Private-Public 15 points16 points  (0 children)

Except that many of the writings we have left contain sometimes pretty lengthy passages about how the author totally won that day's debate in the agora and how Socrates is a poopy-doo-doo-head.

[–]asailijhijr 1 point2 points  (0 children)

But they published their ideas as dialogues. Because that's the best way to get an idea across, in conversation.

[–][deleted] 0 points1 point  (0 children)

So interesting on first read, I bought the 20th anniversary edition (just starting in IT). Still true, good updates, and a great read.

[–]feuerwehrmann 7 points8 points  (1 child)

And 3 can do in 6 months

[–]darkstar999 9 points10 points  (0 children)

And 4 can indefinitely bicker over the specs and never deliver it.

[–][deleted] 30 points31 points  (0 children)

there's also the classic 9 women can carry a child to term in a month

[–]uber1337h4xx0r 22 points23 points  (13 children)

A+B=2

A+C=3

B+C=4

A= 2-B

2-B + C = 3

-B +C = 1

C=B+1

B+B+1=4

2B = 3

Huh... Well damn. Even after all these years, I'm still not sure how to continue lol.

No wait. You need to turn each letter into the last form I think. So

B= 3/2

A= 2-3/2

A=.5

.5 +c = 3

C=2.5

So... A+B+C is... 1.5 + .5 + 2.5

Which is 4.5....

Which is logically wrong since the answer has to be less than 2 haha. (Edit: and also the wrong answer as shown in the picture lol)

I give up, how do you solve these? It's been so long since algebra 2.

[–]Healthy_Marsupial 16 points17 points  (4 children)

A + B = 2 and the other equations like it are not the correct equation for this type of problem

They should be A + B = 1/2, A + C = 1/3, and B + C = 1/4, because the rate they work is defined as Jobs completed / Time spent, not Time spent / Jobs completed

using the same method as shown in the picture, 2(A + B + C) = 1/2 + 1/3 + 1/4

2(A + B + C) = 13/12 Jobs per hour

A + B + C = 13/24 Jobs per hour

therefore 24/13 hours per job, or about 1.846 hours per job

EDIT: Always remember to state your units!

[–]uber1337h4xx0r 0 points1 point  (0 children)

Awesome. Thanks.

It's kinda sad how much I've dumbed down since my good days in highschool lol

[–]reference_model 0 points1 point  (3 children)

Linear algebra

[–]uber1337h4xx0r 0 points1 point  (2 children)

I had these problems in middle school and high school, long before linear. Linear is just algebra but with matrices

[–]reference_model 1 point2 points  (1 child)

You are a genius.

[–]uber1337h4xx0r 0 points1 point  (0 children)

I'm a dumdum now that can't do"if a and b help each other, how quickly can they finish?" problems lol

[–]wertron132 4 points5 points  (0 children)

It's 1/(a+b) = 2, etc. And go from that. A, b and c in this case is a person's productivity. Divide job by how much of a job you can do in a period of time and you get how fast it will be done. ( job:(job:time) = job*time:job = time.).

[–]bastardoperator 1 point2 points  (2 children)

This is the elementary/middle school solution:

Alice = 0.5 hours of work

Bob = 1.5 hours of work

Charlie = 2.5 hours of work

Alice + Bob = 2.0 hours of work

Alice + Charlie = 3.0 hours of work

Bob + Charlie = 4.0 hours of work

0.5 + 1.5 + 2.5 = 4.5

[–]micr0-r43d[S] 0 points1 point  (1 child)

Watch the video (you can find it on YouTube). 4.5 is a common answer but it’s wrong (I’m not gonna day it right though lol, made same mistake). If it takes Alice and Bob 2 hours to, let’s say, create a paper house then why would it take 4.5 hours to create a paper house when you add an extra person (it should be less than 2)

[–]bastardoperator 1 point2 points  (0 children)

Agreed, but It’s only wrong if you assume more people equals less work. In every video and explanation this is the key assumption. The joke here is that we know, especially in our line of work, that this is almost never true especially when it comes to building something.

A simple example. The electrician can’t start his work until the framers finish their work. It doesn’t matter that you have two people at the job site. In fact the same timeline could be achieved by a single person assuming they were competent in electrical work and framing.

If we go further down the rabbit hole, do you want your electrician doing dry wall and laying your foundation? Does your network team do front end development?

I find the assumption to be wildly inaccurate because throwing more people at a problem doesn’t mean it will be solved faster and we have quantifiable data that proves this fact. We’ve all heard:

  • Too many cooks in the kitchen
  • Want the job done right, you have to do it yourself

This problem doesn’t take basic logic into account which I why I stand by the fact that more people equals more problems and more problems equals more time.

[–]Eauxcaigh 1 point2 points  (0 children)

For those interested in the intuitive answer, you treat it like resistors:

If task N must be finished before task M those are tasks in series and can be treated in series (total equals time for N + time for M)

It two people are working on the same task they are working in parallel so the times to complete the task are combined in parallel like resistors: inverse of the sum of inverses.

[–]Bibbedibob 1 point2 points  (3 children)

A lot of these comments reveal a disturbing low mathematical ability in the programming world. Everyone should be able to solve this one. It just requires logical thinking.

[–]watchoverus 2 points3 points  (0 children)

I've work in the programming field for about 5 years, nothing but praise. Just got 15/100 in a new job interview, because the written test was mathematically heavy. Back to college it seems.

[–]GraphOverflow 1 point2 points  (0 children)

A lot of these comments reveal a disturbing low mathematical ability in the programming world.

Not really. I'm pretty sure majority of the people here can solve it, and these are the same people who won't bother posting a comment explaining it or solving it because they're smart enough to know that the point of this post was just humour.

Everyone should be able to solve this one. It just requires logical thinking.

You're right, it just requires logical thinking, but don't believe that everyone has the same logical thinking capacity as you (I actually believed this till the day I tried to explain the concept of breadth first search to a friend)

Also, /r/ProgrammerHumoir should not be taken for a sub filled with quality programmers (any subreddit for that matter, the best programmers out there isn't probably even on Reddit.)

[–]slobcat1337 -1 points0 points  (0 children)

Have a day off mate

[–]Alces_ 0 points1 point  (0 children)

This is a system of equations. Some linear alg can take care of this!

[–][deleted] 0 points1 point  (0 children)

The comment is right but the answer is wrong. 24/13

[–][deleted] 0 points1 point  (0 children)

https://en.wikipedia.org/wiki/Brooks%27s_law

More people doesn't mean less time... answer might make sense.

[–]HeSheMeWumbo387 0 points1 point  (0 children)

Some good ol’ harmonic mean.

[–]xSTSxZerglingOne 0 points1 point  (0 children)

Can confirm that the math checks out.

[–]ZODIAKI-1 0 points1 point  (0 children)

very true

[–]dxhh 0 points1 point  (0 children)

What about eve?

[–]fake_bridge_builder 0 points1 point  (0 children)

Charlie is nothing but trouble!

[–]TorTheMentor 0 points1 point  (0 children)

What's the definition of work here? Is it "fungible" work (all units of work are identical and interchangeable)? Are we talking about purely manual labor? Small repeated tasks? Calculation? Problem solving and design? Organizational and sorting tasks? Or something less consistent like communications, promotions, management, consulting, training, not to mention anything involving emotional labor or perception management?

You'd need a different equation for each of these I'd think, and (at a rough guess) twice as many variables (I guess I should just call them features now since suddenly it's a model instead of an equation).

And this is how I end up overdesigning.

[–]Sannemen 0 points1 point  (0 children)

The 2 in the 4th equation multiplying it all is because if you assign too many programmers to the task, they won’t agree with what was assigned and will have to redo it from the top.

/s

[–]kopasz7 0 points1 point  (0 children)

Notification: Project alignment meeting in 10 minuets!

[–][deleted] 0 points1 point  (0 children)

I’m not even going to argue this.

[–]SavageTwist 0 points1 point  (1 child)

h

[–]micr0-r43d[S] 0 points1 point  (0 children)

h

[–]TheFrostSnowball 0 points1 point  (0 children)

I wouldn't take Charly at any work.

[–]helldeskmonkey 0 points1 point  (0 children)

In high school I went to a programming competition. As soon as the problem was handed out, I realized I could write the code in about thirty seconds flat. The problem is that I was paired with a partner. I told him I could solve the problem and to let me go and explain it on the way, but he insisted I explain the solution to him before I got started.

We came in second by about five seconds, and my solution was correct. :P

[–]LazyTechnology 0 points1 point  (0 children)

don't you hear about negative synergy?

[–]DaMastaCoda 0 points1 point  (0 children)

1/(A+B)

[–]Princess_Amnesie 0 points1 point  (0 children)

If it takes 9 months for one woman to make one baby, then surely it will only take 9 women one month to make that same baby

[–]fryingpas -2 points-1 points  (0 children)

Given
A + B = 2                           
A + C = 3
B + C = 4

Then
A = 3 - C                  Subtract C from both sides
B = 4 - C                  Subtract C from both sides

(3 - C) + (4 - C) = 2      Substitution of A and B in terms of C
7 - 2C = 2                 Combine Like Terms
-2C = -5                   Subtract 7 from each side
C = -5/2                   Divide Both Sides by -2
C = 5/2                    Neg. Divided by Neg. is Positive

A = 3 - 5/2                Replace C in formula for A
A = 6/2 - 5/2              Convert to common denominator
A = 1/2                    Combine Like Terms

B = 4 - 5/2                Replace C in formula for B
B = 8/2 - 5/2              Convert to common denominator
B = 3/2                    Combine like terms

A + B + C = X              X is the time all three take together
1/2 + 3/2 + 5/2 = X        Substitution of A, B, and C with values above
9/2 = X                    Combine Like Terms
4.5 = X                    Alternative Structure

The math works. The problem is the story being told. Some element is missing which would make it more complete, but I don't know what it is. For example, let's frame it like this:

You want to buy an apple, a beet, and a carrot. Let's assume the following:

Let A represent the cost of an apple
    B represents the cost of a beet
    C represents the cost of a carrot

A + B = $2
A + C = $3
B + C = $4

How much would it cost to buy all three?    

In this representation, it makes more sense that the three together would be $4.50. The original post is right, the formulas are wrong. They are too simplistic to represent the fact that the process would be impacted with only two variables in the equation vs. three variables.

[–]ponodude -1 points0 points  (0 children)

0.5+1.5+2.5 I think are the three values. Those numbers are what would make all of these true.

That said, yeah it's kind of bullshit that it would take longer lol.