• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

The "F" Word

 
Author
Posts: 6055
8
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I've noticed a tendancy among many developers to be afraid of people and companies which use the "F" word, Formal.
I think this is because there are many companies which have overused formal, rigid processes. All too often developers are required perform a task simply because that's what the playbook tells them. The problem however, is not with the formality of the process, but rather with the blind devotion to it. In companies with very informal processies, it's usually not well enough defined that there's a clear right and wrong way to do something, as defined by the process. Hence, you can't blindly cling to it.
What do others think? Is formal a four letter word?
--Mark
 
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Is formal a four letter word?


It is, if it stops creativity, doesn't allow value to be added where possible.
i.e. as in You MUST do A,B,C,D and in exactly this order B,C,then D,A.
Some flexibility must be allowed at the developers discretion as long as the final product is seen to be good and it doesn't get overly-expensive and the "Team" does not have to make sacrifices for these bursts of creativity without being made aware of the pending benefits .
regards
[ July 03, 2003: Message edited by: HS Thomas ]
 
Sheriff
Posts: 7001
6
Eclipse IDE Python C++ Debian Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I find it somewhat ironic that programmers, who generally delight in the ulitimate formality of the languages they program in, so often distrust and misunderstand formal business processes.
I wouldn't write a program that just said "Do B, then C, then D, then A". I might pass in parameters, use "if" or "switch" to decide between options, apply processing to all elements of a collection, repeat some process while something is still true, etc.
A good business process can include aspects of all of those and more. As a programmer I much prefer a formal process if it is designed well.
I find something like:
"if anything has changed in the source or build process for a module, ensure that all the release tests have been signed off by a customer representative, and the changes are described in the change document, before delivery"
to be more realistic, more useful and more achievable (as well as more formal) than:
"do tests and documentation"
 
Rancher
Posts: 1449
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I think it is because people have been subjected (and I mean to use that word) to formal processes where it pretty much is "You: must produce this document/artifact whether it adds value to this project or not, you must have this meeting whether it makes sense or not, etc". So formal has come to mean rigid. I have no problem with a formal process as long as it can be tailored to the project such that you can drop some things and add others. Unfortunately, doing this makes some people uncomfortable. Now the process isn't "repeatable". Bad, bad, bad!
In my experience I have also found that management likes very formal, very specific processes but won't recognize that adding things to do (mainly documents, meetings, etc) means the project will take longer. I think that adds to the "fear" of "formal" processes.
Or maybe we're just a bunch of cowboy hackers! Except for the fact all I've been hacking lately are white papers and design specs.
[ July 03, 2003: Message edited by: John Wetherbie ]
 
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I guess that the animosity is actually provoked by another F word: "forced". Unfortunately, the too often seem to go hand in hand.
On the other hand, a team which is *forced* to use XP (or any other informal process) will likely learn to hate that, too.
 
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Look through some of Alistair Cockburn's writing (recommend Agile Software Development) about the difference between formality and discipline. On his scales, XP is very informal, but highly disciplined. A useful way of looking at things. Formal is not necessarily bad. Probably expensive, but some times necessary or worth the investment.
 
Ranch Hand
Posts: 336
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
This quote maybe a little off topic but I think that it's super.

Originally from Execution: The discipline of getting things done

Informality is critical to candor. It was one of Jack Welch's bywords. Formality suppresses dialogue; informality encourages it. Formal conversations and presentations leave little room for debate. They suggest that everything is scripted and predetermined. Informality dialogue is open. It invites questions, encourages spontaneity and critical thinking At a meeting in a formal, hierarchical setting, a powerful player can get away with killing a good idea. But informality encourages people to test their thinking, to experiment, and to cross-check. It enables them to take risks among colleagues, bosses, and subordinates. Informality gets the truth out. It surfaces out-of-the-box ideas - the ideas that may seem absurd at first hearing but that create breakthroughs.



I do agree with John who points out that formal has come to mean rigid, and with Thomas, that formality should leave room for creativity. And like Frank, I also prefer a formal process but the key-thing is that "if it is designed well".
Companies have overused formal, rigid processes . Yes Mark, but that is not really formal it's more like "bureaucratic" the kind of thing you do to compensate for the incompetent, and it's a viscous cycle.
A well-designed process promotes team collaboration and enhances creativity, but you got to have the right people for that, which all boils down to discipline.
 
Mark Herschberg
Author
Posts: 6055
8
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
See, these are great examples of how the word can be misused


http://dictionary.reference.com/search?q=formal:

2. Following or being in accord with accepted forms, conventions, or regulations
3. Characterized by strict or meticulous observation of forms; methodical


There's a world of difference between definitions 2 and 3. For example one process may call for "group collaboration over the next 2 weeks" That's rather informal. It may work if the team works weel together; it may not. Another process may call for group collaboration by starting the week with a meeting and coming up with a plan for the next two weeks. It also involves a checkpoint meeting after 1 week. That to me is formal. It's not clear that this makes it any less creative. All it does here is force communications. If the group is working fine, those will be short, quick meetings. If the group does not, this will insure they at least get started.
--Mark
 
Consider Paul's rocket mass heater.
reply
    Bookmark Topic Watch Topic
  • New Topic