Hacker News new | past | comments | ask | show | jobs | submit login

No, Gantt chart elements can have multiple predecessors. Here's one that actually allows you to do so: https://app.gantter.com/ and here's Wikipedia with a multi-predecessor example (E): http://en.wikipedia.org/wiki/Gantt_chart#Example

Not that many support doing so, nor do most suport the full range of what they're supposed to be able to do. That's a different issue. Personally, I think the single greatest flaw with Gantt charts is that they're (technically) supposed to always have everything add up to 100%. Which means either you set something up to do it for you, or you have incredible book-keeping that becomes ridiculous when you have changes or more than a handful of entries.

Great point, but does having multiple predecessors negate the argument? Each predecessor is simply another set of mock objects to create. The idea is that Gantt charts show an explicit dependency graph, but mock objects allow you to break that graph in order to continue to develop when otherwise you might not have.

Thanks for the link to the app, but I hope I don't have to create any Gantt charts myself. :-)

Essentially, yes, I do think it does. The second example lacks a measure of time to complete those units, so they would end up coming to the right - the mock objects are just mocks, the real ones have to be made still. The "heavy-handed dependencies" still exist, because it won't compile without the mocks, and won't run without everything being built.

In a Gantt chart, you'd also probably have all those under the same higher-level WBS number[1], so they're conceptually grouped. Reflecting how they are all related, and are developed at the same time. Or maybe you'd group the entire project until completion under a single one. Or something.

In any case, you'd have something like:

  {               1: project scope                         }
  { 1.1: stub it out  }  {1.2: finish it }  {1.3: deploy it}
  [build] \
  [mock]  - [integrate] - [build] - [test] - [deploy]
  [mock]  /             \ [build] /
which is fully within Gantt capabilities.

Not that I'm really a fan of Gantt charts. But most of that has to do with how the UIs have been implemented, which tend to prevent at-a-glance information, because the details are decoupled from the chart. Useful for managers, not so useful for the ones making those parts. They're also usually just a spreadsheet with a static chart nearby, which prevents a lot of simple twiddling of details that are difficult in spreadsheet form.

But the only difference I see so far is that the mock-objects have a shade on the left which shows they're mock. Which is something that is possible to do within a Gantt chart, if not something that's implemented frequently enough to make it practical.

[1]: http://en.wikipedia.org/wiki/Work_breakdown_structure

Ah, I think I understand your point now... correct me if Im wrong, but I think you are mostly pointing out how my headline is sensationalist. I'd probably agree with that, and blame it on my inexperience with "hardcore" Gantt charts. :-)

My real point is that project plans often devolve into "we must do A before B before C", which artificially serializes development. This sequential nature has often been presented in Gantt chart form, so perhaps my ire has been poorly aimed.

Gantts do tend to support over-serialization (I think it's the lines. Mustn't mess up the pretty lines, must we, Precious?), but that's an organizational abuse more than anything.

A little sensationalist, yes, but I'm really not seeing any conceptual difference that's not part of the basic behavior of Gantt charts. If I'm missing something (fully possible, I'm a bit distracted), I'd be interested in knowing what it is.

Gantt charts were designed for "real" engineers, who worry about things like pouring in the cement foundations before painting the doors.

They are just not designed for agile programmers. They can be used for software, and are somewhat useful, if only because nobody ever reads the spec, but they can see what must be done on the Gantt chart.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact