yes, for architecture and system design flow charts can be very helpful, but i don't think that for small programs and functionality implementation it's needed. if you spend a lot of time in pre production designing a system that is decoupled and has clear input/output requierments then patching stuff is going to be a simple matter of refactoring code.
This is very true.
Hell, the way programming is, today, you almost don't need a flow chart for 3d programs... it's all pretty much written out in the API standards what needs to be done.
the problem is that people use flow charts for everything, this leads to people just wasting time on designing a small instance of the code that is straightforward.
I can understand the point of doing it in a class, though. To show how the micro translates to the macro.
Though... honestly... if process flow is that complicated of a process for someone... they are probably in the wrong line of work.
Though it reminds me of what an older teacher and I were talking about one day (he heads up the university's lab detachment for our clinic) - a lot of kids these days are growing up without understanding how math works. They know how to use a calculator - but they don't even understand -what- division is.
Which means we're in ****ing trouble.
for instance, if i would make a program to process geographical data from satellites, i would spend a lot of pre production designing the system that parse the data, store it in a database and probably also the format for the data storage. i wouldn't be bothering a lot with the GUI or sound systems because they barely do anything.
True. Though working a good UI onto a project is always a good idea if you plan it to be more than a back-end or 'development' tool.
But... even then... your UI wouldn't necessarily be doing all that much - you could pretty much wing it and make it functional.
it's not enough to know how to make flow charts, you also need to know when to use them and when not to. cutting corners is part of every big project.
I wouldn't say 'cutting corners' is a part of every project. It's separating excessive and redundant work to allow more time for productive work.
But I work in Dialysis (healthcare) - phrases involving "dead" or "cutting corners" tend to be taboo.