|
Yeah, especially when the annual company results are published and you get a 25% annual salary bonus because all of us did such a great job o.O ^^
|
|
|
|
|
There's definitely something of a cargo cult built around some methodologies.
I recently worked with an ardent TDD disciple who would get a little upset with my view that TDD might have its place but that it wasn't the panacea for all things.
I didn't get to see any of his work until after he left. Sure, all the unit tests were passed, but sadly, it wasn't quite the same story when it came to user tests. In fact, it couldn't have been more different. Everything was about as dysfunctional as it could possibly be.
There's a dangerous belief at work there, namely: "I am doing this properly so I have no need to worry about anything going wrong." It's every bit as ill-founded as the idea that if we build the runway, the great iron bird will arrive laden with goodies, and its equally fallacious in that it comes with that implicit guarantee - "this is the way and the way cannot fail."
Once we remove the possibility of failure from our expected outcomes (probably something that various new age barkers would actually advocate), we're left in a state where we stop thinking about how we'll deal with the inevitable. Rather than planning how we'll bubble up our exceptions, we just shrug our shoulders and say "Exceptions? What exceptions? There won't be any exceptions!"
It's this complacency that tends to make rigid devotion to a methodology a very dangerous thing.
The wise course is to cherry pick these things to suit our projects. A few core unit tests are obviously a good idea in many situations, so let's use them but the minute that we start to think that we've come across a fool-proof way to write bug-free software, we're off in the woods with the fairies and the unicorns and we haven't got a cat in hell's chance of coming back in one piece.
98.4% of statistics are made up on the spot.
|
|
|
|
|
That's more or less what I'm advocating. I simply don't believe that any methodology is one-size-fits-all. There are a couple of methodologies out there that suggest reasonable goals.
I view these goals as aspirational. I make an honest effort to achieve them. However, if I find some goal is a bad fit for a specific project, I'm willing to set aside that goal.
In general, I'm very leery of words like "always" and "never". In my experience these words are always wrong and never lead to good things
As an example, I'm a huge believer in TDD. This is mostly because its saved my bacon more than a few times. Though, I think even it has some limitations.
For example, during the initiation phase, I often like to prototype a couple of ideas first, before committing to an approach. I've had TDD purists complain that I'm doing it wrong, because I defer writing the tests (slightly) until after I choose the best approach.
|
|
|
|
|
Eric Lynch wrote: In general, I'm very leery of words like "always" and "never". In my experience these words are always wrong and never lead to good things
That is a very healthy philosophy!
98.4% of statistics are made up on the spot.
|
|
|
|
|
The problem with software methodologies occurs when the developers and the managers do not have the same goals.
- You see agile introduced into a workplace by developers when the devs are tired of being chained to a heavyweight process with tons of useless meetings and an impossible schedule.
- You see agile introduced by management when code is not always delivered on schedule, and when marketing doesn't always get that hot feature requested by a potential customer last week.
Trying to get predictable delivery AND a sane process AND more emphasis on quality than quantity is difficult. Unless authority is shared between developers and managers, it rarely works out well.
|
|
|
|
|
I agree with some of the posters. I have seen quite a few methodologies and the frustrating thing I see, especially as it relates to agile, is that everybody believes it solves all software problems but they don't really understand what they are. Agile development is a method of development of software, not a method of everything. As an example, if I give you a cow and a tree and tell you to build a teepee, you end up short of a few things. How do I get cow hide? How do I get poles? How do I build the teepee? Do I have to fit it for one person? Yeah, that list could go on forever, but I think it makes the point. You have to do the basics. You have to do the analysis. You have to do the requirements gathering. You have to define testing, if you want to test? How? Unit testing only? Again, that list can go on forever.
In my experience the industry, and quite literally every job I have worked at in a decade, goes "we are doing agile application development, here is the customers old database it is 20 years old, you have to build a new modern database from it. You also have to modernize it, use all these new technologies and make it shiny. Oh and you can't talk to the customer." They then expect agile to just cover the development, not have any problems and make a perfect product without even finding out what the clients current needs are. It is ridiculous and it shows how the actual concepts of software development are dying to a culture of fads and not actually using the thing between your ears.
|
|
|
|
|
Regrettably, so many different methodologies currently claim to be "agile" that the word has almost lost all meaning. For example, the original (from Manifesto for Agile Software Development[^]) actually favors customer collaboration.
It sounds like you've fallen victim to one of the variants where the engineering team is discouraged from communicating with the customer. I've been there...not much fun. Unfortunately, this seems to be the norm with most of the variants claiming to be "agile".
|
|
|
|
|
There is a very similar style of story called "The life Cycle of a Silver Bullet" by Sarah Sheard (Journal of Defense Software Engineering, July 2003) that is still available at various places[^] on the /web.archive.org. Worth a look. Nothing changes....
|
|
|
|
|
Dang, now I'll have to write a new post: The Life Cycle of Rants About the Life Cycle of a Silver Bullet. This will undoubtedly lead to a post about the life cycle of that post, and so on. I sense an infinite loop emerging...beer time
|
|
|
|
|
They fixed the ELEPHANTING soft keyboard!
Yes! it's back like it was before the last update: SHIFT, CTRL, and ALT now stay on while you hold them down. Ahhhhh ... Seems to be smaller as well, so more of the screen is visible.
That may sound minor, but try highlighting a dozen words when SHIFT and CTRL only affect the next keypress and you'll understand.
Mind you, the V_sign emoji could be handy in QA... ✌
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
modified 19-May-18 14:50pm.
|
|
|
|
|
|
|
|
I saw the Climax Blues Band at Liverpool University in 1977!
=========================================================
I'm an optoholic - my glass is always half full of vodka.
=========================================================
|
|
|
|
|
I now have latest Windows and I can finally type all those Emojis! 🤷♀️😜💋🥪🍙🥐😐🕵️♂️
|
|
|
|
|
So,
This is how a civilization adopts a logographic written language.
Year 1600: Yond is a most wondrous idea! thee shouldst bid me m're about t!
Year 2000: That is a great idea! You should tell me more about it!
Year 2018: Dat is a gr8 idea! u should tell me more about it!
Year 2400: 👍💡🗣👁
Best Wishes,
-🐉🤴
|
|
|
|
|
Nailed it! Maybe Ancient Egypt was in fact a fading advanced civilisation?!
|
|
|
|
|
Caveat Emptor.
"Progress doesn't come from early risers – progress is made by lazy men looking for easier ways to do things." Lazarus Long
|
|
|
|
|
|
Super Lloyd wrote: I now have latest Windows and I can finally type all those Emojis!
33 years since Windows 1 came out, Microsoft has finally made a useful OS.
|
|
|
|
|
Wow, that was quite quick!
|
|
|
|
|
Woo hoo - 🐘 is pretty bland compared to
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Mmm...
But we got.. Unicorns! 🦄🦄🦄🦏
|
|
|
|
|
You know it only works if the person who's reading your post is also running Win10, right?
/ravi
|
|
|
|
|
Nah, I didn't, haha!
But hey, all good people do!
|
|
|
|