Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

"Quick 'n Dirty" vs. "Correct and Proper"?

Cliff posted more than 11 years ago | from the which-way-would-you-go dept.

Programming 887

A not-so Anonymous Coward enters this query: "I keep finding myself on projects where a quick and dirty solution will bring in money for the company, and a correct (ie, properly documented, well engineered, process followed, etc) solution will get us left in the dust. When the Q&D solution succeeds, I'm left trying to explain why it can't be the FINAL solution (to PHBs and Marketroids that were fully informed of the situation prior to any work getting done). Most recently, work I did in record time was used to help bring in several large contracts, and then I found myself in hot water for not having followed process et al. So, to Slashdot: is it better to do the quick thing and greatly increase the chance of $uccess now, or to do the correct thing and avoid pain later (assuming there is money to pay for the pain later)?"

cancel ×

887 comments

Sorry! There are no comments related to the filter you selected.

Passion is the key - if you're passionate, release (4, Offtopic)

Jouster (144775) | more than 11 years ago | (#6410110)

You just found out that your father, who is in perfect health and has raised you for as long as you can remember, is not your real father. Your real father is somewhere, nobody knows where, and either dead or nearly so. The feeling that you get imagagining that scenario is the reason that I strive to ensure information never dies. It's why I cry when I see a house torn down, and it's why I cry when I think of the fathers of my chosen discipline dying off one-by-one, leaving behind only what programs and books they've managed to produce. And it's why I'm scared that one day I'll wake up and find that there's a piece of me, the fruit of my heart and mind, my program, my son, that, if I don't track it down, will be lost forever.

Passion! Passion is the key! If we are passionate about everything we do, we leave behind a wake of people inspired by our passion, inspired not by what we've done but by *how we've done it*. Passion yields fruit so ripe, its benefactors need remember only our name, because they can but speak it to a person who has known us, and the passion comes alive from us through them! Passion, not persistence, not training--not any of those things, though they are certainly important. Nothing but passion can lead us through to a place where our name connotes the good, endorses the worthy, and gives rise to those not only capable of following in our footsteps, but with their *own* passion, born of ours, to do so right.

Passion is the key. Be passionate now. If you aren't passionate about what you have written, if you aren't fighting the irresistible urge to hold it up high and have the world marvel at its brilliance and beauty... then you have failed, and you mustn't release that code.

Re:Passion is the key - if you're passionate, rele (0)

Anonymous Coward | more than 11 years ago | (#6410142)

Nice flowery speach. Unfortunately, correctness and validity outweigh passion in a lot of manager's (and customer's) minds.

Re:Passion is the key - if you're passionate, rele (1, Funny)

Anonymous Coward | more than 11 years ago | (#6410160)

I see you didn't take the red pill...

Re:Passion is the key - if you're passionate, rele (1, Funny)

Anonymous Coward | more than 11 years ago | (#6410175)

Yes! Man, the interface sucks and it takes longer than pencil and paper to get a result, but I am just filled with many warm fuzzies when I discover the sheer passion and drive that went into developing such a substantard product. At least, that's what the developer told me...

...and the oscar goes to (0, Offtopic)

Elphin (7066) | more than 11 years ago | (#6410185)

...and the oscar goes to Jouster for "Post that brings tears welling in eyes"

Re:Passion is the key - if you're passionate, rele (2, Interesting)

El (94934) | more than 11 years ago | (#6410195)

Sorry, but I got terminated from my last position for having the gall to actually attempt to improve the product (without getting permission from all my coworkers who were out on Christmas vacation first). My take is that most managers would rather have developers that at least pretend to do what they're told, no more, no less.

Re:Passion is the key - if you're passionate, rele (4, Insightful)

CausticWindow (632215) | more than 11 years ago | (#6410254)

You sure you actually improved it then?

Clearing major changes with your cowworkers is generally a good thing.

testing 1..2...3 (-1, Offtopic)

Anonymous Coward | more than 11 years ago | (#6410122)

Hello? This is just a test...

um (-1, Flamebait)

Anonymous Coward | more than 11 years ago | (#6410123)

Why dont you use common sense you fucktard, stop coming to slashdot trying to get your lame problems solved. I hope you are fired.

memo (2, Funny)

albeit unknown (136964) | more than 11 years ago | (#6410124)

Did you get that memo about the new cover sheets on the TPS reports?

Re:memo (0)

Anonymous Coward | more than 11 years ago | (#6410194)

1) Make Office Space Reference
2) ???
3) Get modded up!!!!

Re:memo (4, Funny)

suso (153703) | more than 11 years ago | (#6410201)

Hey, did you get that memo about the TPS reports? Well it's just that now we're putting a cover sheet on them and if you could do that in the future it would be great. Thanks...

fp (-1, Offtopic)

Anonymous Coward | more than 11 years ago | (#6410129)

fp

Re:fp (-1, Offtopic)

Anonymous Coward | more than 11 years ago | (#6410270)

You failed that shit like you failed your father, nancy-boy. Now go put on your makeup and cry yourself to sleep to the sound of your dildo vibrating in your ass.

One reason why we need to absolve money (3, Interesting)

suso (153703) | more than 11 years ago | (#6410131)

This is one reason why we as a society need to find ways to get rid of this need for greed and wealth and money in general. Otherwise things just keep running into the ground.

Re:One reason why we need to absolve money (5, Insightful)

Capital_Z (682911) | more than 11 years ago | (#6410186)

What you describe is not a social problem - it is a human nature problem.

Re:One reason why we need to absolve money (1)

TripleA (232889) | more than 11 years ago | (#6410216)

You are saying Capitalism must go, right? It's a giant lap to go, especially for the US.

Re:One reason why we need to absolve money (2, Informative)

Otter (3800) | more than 11 years ago | (#6410220)

Sure, if "not-so Anonymous Coward " would quit his job and do those projects as acts of charity instead, there wouldn't be any problem. On to the next question!

Re:One reason why we need to absolve money (1)

El (94934) | more than 11 years ago | (#6410222)

They tried that -- it didn't work. Remember the Soviet Union?

money (0)

myoohn (631500) | more than 11 years ago | (#6410135)

the point is to get more money with less investment while getting trust from cusmers.

hit the sweet spot.

blah (-1, Offtopic)

Anonymous Coward | more than 11 years ago | (#6410136)

blah

No easy answer (5, Insightful)

bartlog (154332) | more than 11 years ago | (#6410137)

There's no definite answer to your question. You must judge the circumstances and make the call. Much as we'd like to do everything properly, quick and dirty is often first-to-market - and I've used plenty of products that had significant bugs and yet were adequate for my purpose.

LUNIX = TEH SUK! (-1, Flamebait)

Anonymous Coward | more than 11 years ago | (#6410138)

FCK U

Do Both. (2, Interesting)

Anonymous Coward | more than 11 years ago | (#6410140)

Put together the quick & dirty solution, then fix and document afterwards when you have the benefit of time!

FP (-1, Troll)

Anonymous Coward | more than 11 years ago | (#6410143)

FP

Sorry, but it's got to be done

It's like sex... (5, Funny)

PeteyG (203921) | more than 11 years ago | (#6410146)

It's like sex.

Quick and dirty, like getting drunk and meeting some stranger in a motel room, will leave you feeling gross aftewards.

Correct and proper, like wooing a nice and attractive young lady, takes time, hard work, and if it works out, leads to something wonderful and long-lasting.

Either way, you have sex. But which one would you rather tell your mother about (or rather, put on your resume)?

Re:It's like sex... (3, Funny)

Gr33nNight (679837) | more than 11 years ago | (#6410188)

I dont know about you, but I DO NOT tell my mother when/if I get laid. There are some things she really doesnt need to know about.

Re:It's like sex... (4, Funny)

flowerp (512865) | more than 11 years ago | (#6410208)

> Either way, you have sex. But which one would you rather tell your mother about (or rather, put on your resume)?

Sex on your resume is ALWAYS bad. See Bill Clinton.

(Unless you are a porn star of course)

Re:It's like sex... (5, Funny)

Xugumad (39311) | more than 11 years ago | (#6410241)

That, and it scrunches the paper up...

Re:It's like sex... (2, Interesting)

aepervius (535155) | more than 11 years ago | (#6410224)

Since we are on the sex analogy, well the problem is that the young attractive lady, turn out to de a demmanding women recriminating every one of your move, and always asking to sekll yourself as cheap as possible. And if you aren't quick & cheap enough, then , well, there is always the concurrence.

As another poster said there is no easy solution despite all the analogy you can come with. it is a case for case.

Re:It's like sex... (0)

Anonymous Coward | more than 11 years ago | (#6410228)

Uh... correct-and-proper could also lead to marriage with an attractive young lady who doesn't like sex.

There are many levels inbetween the two you suggested...

Re:It's like sex... (2, Funny)

Anonymous Coward | more than 11 years ago | (#6410231)

Shit. Now wonder I don't have any job offers. I've completely neglected to put my sexual history on my resume!

-AX

Re:It's like sex... (2, Insightful)

DNS-and-BIND (461968) | more than 11 years ago | (#6410234)

What if your bosses told you you had to fuck 10 women by 5pm Friday afternoon?

Re:It's like sex... (1, Funny)

Anonymous Coward | more than 11 years ago | (#6410256)

It's like sex.

Maybe, but I don't think your analogy will resonate with the average /.er - most are likely waaaay more familiar with Q&D and C&P than they are with sex

Re:It's like sex... (0, Flamebait)

jawtheshark (198669) | more than 11 years ago | (#6410257)

Correct and proper, like wooing a nice and attractive young lady, takes time, hard work, and if it works out, leads to something wonderful and long-lasting.


Considering the fact that that all your efforts are usually vain. Even if you still believe in love and think you found the one. Don't be fooled, the bitch will drop you.... coldhearted...

So give me the fuck with no responsibility, because the girl you want will dump you anyway.... What are you more proud of to tell to your mom: that you have a healthy sex life or that a girl broke your heart. I'll take the first one any day.

Re:It's like sex... (3, Funny)

Just Some Guy (3352) | more than 11 years ago | (#6410266)

And which one would you rather brag about around the coffee pot?

You: "Yeah, it took me seven times longer than Joe in Graphic Design, but the quality... Oh, the quality..."
Coworker: "Joe did it seven times before you did it once? You are the suck."

Re:It's like sex... (4, Insightful)

jtdubs (61885) | more than 11 years ago | (#6410267)

So, would you rather put on a resume:

1. I contributed to a project that got out the door quick and made lots of money for the company.

2. I contributed to a project that was well engineered, and was so late to market that no one wanted it.

I think most managers would rather see the first one...

Justin Dubs

Correct and Proper (4, Insightful)

dylan95 (307651) | more than 11 years ago | (#6410147)

Correct and Proper
Otherwise you're going to spend all your quick cash on fixing bugs and supporting craptacular software, not to mention bad press and angry users.

it's not that simple (2, Insightful)

SweetAndSourJesus (555410) | more than 11 years ago | (#6410178)

Unless your contracts allow "as long as it takes" as a deadline.

Sometimes quick and as proper as possible (but mostly quick) is your only option.

Re:Correct and Proper (3, Funny)

flying_triguy (560874) | more than 11 years ago | (#6410193)

Correct and Proper
Otherwise you're going to spend all your quick cash on fixing bugs and supporting craptacular software, not to mention bad press and angry users.

But you'll be RICH

Always Document Approval (4, Insightful)

Anonymous Coward | more than 11 years ago | (#6410148)

You don't state your position. Your manager should be getting proper sign-off for you. If that's your role, you're not doing a good job of it. Let the right people know, via email, and get confirmation, via email. Always do whatever is right for the situation. Sometimes it's quick and dirty, others it's slow and proper. Note that even quick and dirty can be well documented and follow process.

Checked the unemployment rate lately? (0)

Anonymous Coward | more than 11 years ago | (#6410150)

IMO, getting contracts and money in sounds awfully good...

Well (1, Funny)

CausticWindow (632215) | more than 11 years ago | (#6410151)

Who doesn't like it quick and dirty?

This isn't the only aspect of life where quick and dirty is superior. If you stop to think about it, most things feel better when done quick and dirty. At least dirty, I know I like it dirty anyway.

You know the kind of dirty that you won't get on afternoon tv, passions, etc. Know what I mean? And I'm not talking pay tv in a hotel dirty either, I'm talking real life forbidden in 49 states dirty. Huhu. Yeah, that's it, I knew you dug it.

$uccess is temporary (5, Insightful)

mrybczyn (515205) | more than 11 years ago | (#6410153)

Companies aiming for $uccess while compromising the quality of their software will only obtain this success in the very short term... Do what they want now, but look for better pastures while you're doing it, because your company won't be around for long.

Re:$uccess is temporary (0)

Anonymous Coward | more than 11 years ago | (#6410259)

Right, 'cause the most obvious and egregious example of this (a nameless company in the northwest) went out of biz right after they started. Oh, wait.....

Re:$uccess is temporary (2, Insightful)

Atomizer (25193) | more than 11 years ago | (#6410265)

Yeah, totally right. Just look at that stupid company Microsoft that put out their first OS, QDOS? Quick and Dirty OS. Talk about a bad business move. Imagine how much richer Bill Gates could be today if he had only taken a few years to write a perfect from the ground up OS that would be easy to support and modify for the future. Something like BeOS maybe. That would be cool.

Re:$uccess is temporary (4, Insightful)

sparkhead (589134) | more than 11 years ago | (#6410274)

[Obligatory MS bash]
Tell that to Gates.
[/obligatory MS bash]

Seriously though, the "there's never time to do it right, but there's always time to do it over" camp has a lot going for it. If you cannot do it quick someone else will.

On the surface a product riddled with bugs looks very similar to one thoroughly tested. Then when a customer starts filing defect reports, you can amaze them with your quick turnaround and great customer service in fixing them.

It's a sad commentary, but it's how most business works.

first gay nigger porost! (-1, Troll)

Anonymous Coward | more than 11 years ago | (#6410155)

* Are you gay?
* Are you a nigger?
* Are you a GAY NIGGER?

If you answered "Yes" to any of the above questions, then GNAA (GAY NIGGER ASSOCIATION OF AMERICA) might be exactly what you've been looking for!

Join GNAA (GAY NIGGER ASSOCIATION OF AMERICA) today, and enjoy all the benefits of being a full-time GNAA member.

Why not sign up now? It's quick and easy, only 2 simple steps!

First, you have to obtain a copy of "GAY NIGGERS FROM OUTER SPACE THE MOVIE" [imdb.com] and watch it.

Second, you need to join the official GNAA irc channel #GNAA on EFNet, and apply for membership.

Talk to one of the ops or any of the other members in the channel to sign up today!

If you are having trouble locating #GNAA, you might be on a wrong irc network. The correct network is EFNet, and you can connect to irc.secsup.org or irc.isprime.com as one of the EFNet servers.

If you have mod points and would like to support GNAA, please moderate this post up.

P.S. To keep this post on-topic, the GNAA feels its always better to follow the process, because it tends to impress your superiors at your workplace more so than fast work. i.e., we did an entire Quake engine story board process for Gay Niggers From Outer Space [imdb.com] , when I already knew exactly what I wanted to see.

-A Proudly Gay Nigger

-aaaaa--a-----a----a-------a----
a-----a-aa----a---a-a-----a-a---
a-------a-a---a--a---a---a---a--
a--aaaa-a--a--a-a-----a-a-----a-
a-----a-a---a-a-aaaaaaa-aaaaaaa-
a-----a-a----aa-a-----a-a-----a-
-aaaaa--a-----a-a-----a-a-----a-

"Quick 'n Dirty" vs. "Correct and Proper"? (0)

Anonymous Coward | more than 11 years ago | (#6410156)

Either is fine with your mom... :) But, ultimately she prefers 'back-door love', if you catch my meaning.

it all depends... (1)

brondsem (553348) | more than 11 years ago | (#6410158)

it all depends on your situation, goals, outside forces, etc. why does everyone "ask slashdot" about how they should do things? there is no hidden genie that will make all your problems go away. think about it, then do it.

Quick and Dirty? (2, Funny)

Anonymous Coward | more than 11 years ago | (#6410159)

Actually, there's different schools of thought. Your sister likes it quick and dirty - there's no doubt about that. However, your mother likes it when I take it nice and slow.

I think for the few truly excellent programmers: (4, Funny)

ath0mic (519762) | more than 11 years ago | (#6410163)

"Quick 'n Dirty" == "Correct and Proper"

...and believe me, I'm not one of them.

Re:I think for the few truly excellent programmers (3, Funny)

forwhomthebelltrolls (670539) | more than 11 years ago | (#6410258)

Why did I think of this Dilbert [comics.com] comic strip when I read your message?

Whats a process ? (4, Interesting)

shaka999 (335100) | more than 11 years ago | (#6410164)

At least well I work process is what everyone agrees we should be doing. We are never, NEVER, given the time to completely follow the process. If you try you will either be working 60+ hour weeks or laid off for missing schedule too many times.

What I find funniest about our development process is that the people most adamant about putting things in place and documenting developement usually aren't having to do all the grunt work they are suggesting.

What I do... (1)

MoeMoe (659154) | more than 11 years ago | (#6410165)

Show them that the proof is in the pudding... Give them an explanation of why you did things the Q&D way and how your decision brought in money for the company. If they still complain, then do the Q&D but make it look C&P... Tricky I know, but an "attempt" at C&P justifies your actions, works for me anyway ;)

I know the feeling (0)

tlacicer (515153) | more than 11 years ago | (#6410166)

I often just want to get up during a meeting walk over to a wall and say "Why aren't you listening to me!!!"

*Cough* *Cough* (5, Funny)

buffer-overflowed (588867) | more than 11 years ago | (#6410167)

Clicky Clicky. [lysator.liu.se]

Truly, things to program by (or not).

Professional Software Tester's Opinion: (1, Insightful)

Anonymous Coward | more than 11 years ago | (#6410171)

Just let the marketing guys do the math:
Quick and dirty solution:
$1000 to make
$100000 to support
or
Proper solution:
$10000 to make
$10000 to support

Personally (5, Insightful)

elBart0 (444317) | more than 11 years ago | (#6410172)

I'd rather work for a company that's in business two years down the road, than work for a company that got lost in the dust.

But, ultimately I think the answer to the question lies in the actual type of work being done. Throwing together a quick app convert some data from one format to another, for one time use, is very different from building mission critical applications.

The end result and the time required to meet that result will ultimately determine the correct approach, on a case by case basis.

Being the market leader (1)

suso (153703) | more than 11 years ago | (#6410176)

One more thing. Usually the product that wasn't built well fails in the end. But it really depends on what market it is, how much demand there is and also who the customer is. The situation is going to be different if this is a product for the consumption of millions of people (ie, a game or whatnot) than if it is a product for a large corporation (large database interface, etc.)

Re:Being the market leader (2, Insightful)

shaka999 (335100) | more than 11 years ago | (#6410198)

I have to [somewhat] disagree here.

Usually the product that wasn't released within a market window fails. If your product is late out the door you don't stand a chance.

Example (2, Interesting)

Lane.exe (672783) | more than 11 years ago | (#6410177)

Microsoft

Now, hear me out, an don't mod me up as funny or down as a troll. :)

Microsoft often takes the quick-and-dirty way, and despite this, they've been successful, because, on the whole, their project is usable to end users. This should be what you strive for in business. If it works 95% of the time as a quick-and-dirty solution, then worry about fixing that 5% later when you have time. If the end users can get their work done without causing any potentially serious complications, why bother?

Of course, I also have to develop databases using FileMaker Pro. All I know is quick and dirty!

Of course I won't pick one of them. (1)

Leffe (686621) | more than 11 years ago | (#6410179)

I would do something quick and dirty at first, then try to fix as much as possible if there is time over. Afterwards I'd try to patch what can be saved, maybe run away to somewhere where noone can find me -_- I'd better bring some sort of connection to the internet though, or I'd starve(order pizza to the north pole).

The correct and proper way is the preferred one though, unless you are very time limited you SHOULD(RFC >:)) do it the correct and paper(that's what I read at first) way.

If it's about money and losing money... hmm... maybe looking over the development process to cram some extra %s of properness out of the hackers ;)

indeed (0)

Anonymous Coward | more than 11 years ago | (#6410181)

"et al" is NOT a substitute of "at all"

__j

Do it right. (4, Insightful)

nuggz (69912) | more than 11 years ago | (#6410187)

If quick and dirty works good enough, then it should be the final solutions.

If it does not work good enough, then no matter how quick it is, it isn't a solution.

The procedure is there for a reason, follow it. If the procedure is wrong correct it.

Quality will be rewarded in the end (3, Insightful)

whistler36 (189652) | more than 11 years ago | (#6410189)

I always assume that code that can be easily maintained (which is the assumed outcome of following the process) will be cheaper and more appreciated in the end. It might be better to examine what is happening at the company when you are consistently left without enough time do it the correct way. Of course, if management is composed of morons (Could this actually happen?) you might not be left with any choice.

Get the sale (and prepare for doing things right) (3, Interesting)

burgburgburg (574866) | more than 11 years ago | (#6410190)

Any down time should be used to create the circumstances so that a proper procedure solution can be quickly, cleanly applied. For now, though, get the damn sale. If you're around long enough (and anyone still cares), you can fix it later.

That said, quick and dirty is always more fun.

Quick & Dirty (2, Insightful)

Anonymous Coward | more than 11 years ago | (#6410199)

George S. Patton Once Said...
"A good plan, violently executed now, is better than a perfect plan next week"
If its good enough for the US Third Army it must be good for Corporate America...

The obvious answer (1)

CausticWindow (632215) | more than 11 years ago | (#6410200)

But not an answer that will appeal to most people.

You make it quick and dirty while on the companys time, but you think it through so that an elegant solution isn't far away.

Then, out of pride in your work and your legacy in general, you make it elegant on your free time. Just be sure to get credit in the headers.

Maintenance Contract (4, Insightful)

Crashmarik (635988) | more than 11 years ago | (#6410205)

Custom Development should never be sold without maintenance.

Document what your nominal superiors specifically asked you to do and when the maintenance costs go out of control present the doc. All things being equal the contract will cover much of the cost of correcting things and some will learn the benefits of doing things right from the begining.

In a Capitalist Economy, what do we follow? (1)

_Sambo (153114) | more than 11 years ago | (#6410206)

MONEY!!!

I feel the pain of everyone who is forced into the quick and dirty path. It's somewhat like being forced to join the dark side of the force.
BUT:
When the client needs something done, and the quick and dirty way will deliver, businesses will almost always choose the quick and dirty way.

It is difficult to find a for profit company where profit is not a top priority.

It's one of the things that makes america great. We don't care how bad the product sucks, as long as someone will definitely buy it.

Unless you work for... (0)

Anonymous Coward | more than 11 years ago | (#6410207)

Unless you work for a company with a software quality assurance plan; you're screwed.

Quick And Dirty (1, Redundant)

sparkhead (589134) | more than 11 years ago | (#6410209)

If it's a question of losing the customer to another shop that works quick and dirty, do it Q&D.

But get, in "writing" (email), confirmation from the powers that be that you're circumventing procedures in order to get the work done within the timeframe needed.

They can either attempt to explain to the potential customer that it will take longer for a quality product or simply not say a word.

At that point it is their choice. Give them all the options, cover your ass, and get the work done as they want it. If they come back to give you crapola, show them the paper trail of approval for what you've done.

Do what you're told (0)

Anonymous Coward | more than 11 years ago | (#6410210)

Do what you're told, and document, docoument, document your concerns/admonitions/warnings.

Microsoft have already answered your question. (2, Insightful)

paj1234 (234750) | more than 11 years ago | (#6410211)

Do it quick and dirty on the inside, make it look glossy on the outside. A short term fortune awaits...

Prove yourself first (2, Insightful)

The Bungi (221687) | more than 11 years ago | (#6410212)

In my experience problems like these won't ever end until you prove yourself first by implementing The Right Way at least once. Before that the PHB just thinks you want to play|learn on company dime|extend your contract.

Once you've done it correctly once, they're much more likely to be putty in your hands, because you've gained credibility.

Of course the trick is to get that first success, and, sometimes, to convince them that the thing doesn't break because it was fscking done correctly, not because it's simple. Many times you end up making things look easy when they're really not, and that gives the wrong impression. Sigh.

But anyway, having a half-intelligent PHB also helps =)

Do what the PHB's say they want (1)

Archfeld (6757) | more than 11 years ago | (#6410214)

JUST GET IT IN WRITING or you are screwed. As a systems engineer I KNOW this pain intimately. No matter HOW they APPEAR to understand the needs and requirments, THEY DON'T. The ONLY thing they UNDERSTAND is $$$'s and personal liability/culpability, ensure that you as a technology implimentor (oooo PC terms abound ) are not the one whose name is on the bottom line... Or of course you can always go Don Quioxte and give your self an ulcer for nothing as well :)

Change your process (2, Insightful)

SlashdotLemming (640272) | more than 11 years ago | (#6410215)

The Unified Process and Extreme Programming are more than buzz words.
My point here is learn how to develop iteratively and incrementally, so that your first quick and dirty cut is on the path should the project continue.
The key is to learn how to identify high risk items early, and learn what you can and cannot take shortcuts on.

Harder that it sounds, as always :)

Quick, Correct and Proper (2, Interesting)

I Like Swords!!! (668399) | more than 11 years ago | (#6410218)

I say just drop the 'n Dirty and that's what you should do.

Do everything you can in (one of) the correct way(s), but as fast as you possibly can. Q&D solutions often reach up and bite you in the behind when you least expect them, resulting in wasted time trying to fix the "solution". Taking some amount of time (but not too much) to solve a problem is preferable if you ask me. But when you have people that don't have even the slightest inkling about what you are doing breathing down your necks... I can see where doing it dirty comes about.

The question is misleading. (1)

Mensa Babe (675349) | more than 11 years ago | (#6410223)

"Quick and Dirty" vs. "Correct and Proper"? That is not a good question. That is not a good question at all. Where is e.g. "Quick and Correct"? I am not sure about other people, but this is how I presonally prefer to work. And no, using no strict and no warnings pragmata does not necessarily mean my code is "dirty." I exactly know what I am doing.

Quick, Cheap, and Quality (1)

MalleusEBHC (597600) | more than 11 years ago | (#6410225)

Tell your bosses that they may chose 2 of the above 3 options for each project. If they ask for all 3, you can either A) find a new job or B) pray.

Depends. (2, Insightful)

davidsheckler (45018) | more than 11 years ago | (#6410226)

When you do something quick and dirty, do you have
to maintain it? Or will that task be left to
some other poor slob who will bitch and moan
about the piss poor coding you did.

If you have to maintain it, do it right. You'll
be the person getting phone calls in the middle
of the night if you don't.

Of course you should always produce clean, well
tested code if you have any morals.

I guess the real answer is do the best you can
with what you're given. Make sure those in
charge know what you're doing and why you're
doing it. Are you, and your company satisfied
with the end result? If not, go back to start
and take a look at your methodology.

It reality only the government and
aerospace can afford true software engineering.

Scott versus LaForge (5, Insightful)

SunPin (596554) | more than 11 years ago | (#6410227)

This is precisely why I work on referrals only. Random customers hear about how great you are and then expect perfection in five business days.

Referrals create an environment where one customer understands what the last one went through and why they decided to allow the project time.

Be up front. If you want a quick timeframe, you lose future expandability. If you want a robust program that won't be obsolete when a business process changes then that requires more time.

That way, it's the customer's decision and not yours.

Quick and Unemployed (5, Insightful)

Liselle (684663) | more than 11 years ago | (#6410230)

Sometimes it's necessary to do something "quick and dirty" as a stopgap, but it's my opinion that it should only be used as an emergency strategy, to be followed up with a permanent solution ASAP.

I work at a small software company that operates in a niche market, though we have competitors. I am not a developer, but I work closely with them (I do QA). I have lost count of how many times one of the devs has slapped on a band-aid fix, made a build, shot it up to the company FTP, and next thing I know, I am dealing with irate clients who have to deal with bug fallout and unforseen consequences.

It it ALWAYS better to plan ahead, and do it right the first time. Money comes and goes, but your reputation is more important in the long run than any short term monetary gain.

Read 'The Pragmatic Programmer' (1)

avandesande (143899) | more than 11 years ago | (#6410233)

... by Hunt and Thomas. This book really helps you understand how to achieve balance in your work.

Management isn't always useless (2, Informative)

Anonymous Coward | more than 11 years ago | (#6410236)

As revolutionary as this might sound on Slashdot, there are times when it is the correct decision to give your boss all of the facts, and let him decide. The positive benefits include:

1) You are much less likely to get in hot water for making the wrong decision. It would take a truly malicious boss to hold you accountable for a decision that he/she made.

2) There is a reasonable probability that your boss will have a better sense of the urgency of the relevant business issues than you do, given his communication with upper management. If you can clearly present the technical pros and cons, he can weigh those against the business pros and cons in a way that neither of you could do without information from the other.

3) Lets you stop agonizing and get back to coding.

-Tupshin

Quick and dirty (1)

crivens (112213) | more than 11 years ago | (#6410238)

Quick and dirty seems to win most often; look at Microsoft!

Depends, of course. (3, Insightful)

IthnkImParanoid (410494) | more than 11 years ago | (#6410239)

I use so many programs on a daily basis that were just thrown together (by me or someone else). They are not extensible, they have a limited set of features, and they'd be a pain to maintain, but they do what I need them to do now, and no one else really uses them.

It's much different when you're designing a program that will be used by many people for many years, and as such will need to be maintained and extended throughout it's lifetime, possibly after you've left. If you're on a tight deadline and you have to kludge something to get a contract or whatnot, make sure your boss fully understands that the program will not have a long lifespan, and let them make the call. (that will depend on how pointy your boss' hair is, of course.

Retirement (1)

dmeranda (120061) | more than 11 years ago | (#6410240)

I used to think there was a choice too, when I was younger. I've since learned that no matter how screwed up you thing the corporate world and the PHB's are, it's much worse than that. I've got stories that make yours seem like a decision between chocolate and strawberry ice cream. They should start teaching this stuff in college rather than engineering idealism! There's no way you can ever win; just retire and work on Open Source where you can do things the way you want to. I so envy Linus' I'll release when it's done position.

take a software project management class (0)

Anonymous Coward | more than 11 years ago | (#6410249)

Quality is very important, as I'm sure you're aware. Yes, the Q&D hack will be ready soon, and it will work mostly, but what about support? Changes? Documentation? What about when you get 3 new team members and they can't understand what the fuck is going on because everything has comments like: //works..slighty //hackish

etc?

Explain to your boss in terms he can understand - things like ROI, earned value, show him how the planned project costs less to your company in the long run because by catching the bugs in testing you don't have to delay the project a month to fix everything. Let him know that yes, it will take longer to do a proper project, but you get a quality result.

Maybe this will work. But if the whole attitude of the company towards quality is that they don't care, I think that speaks volumes about they are going to treat you on other things.

Yes it can be fun to make quick hacks, but when it comes down to it if all you're doing is coding shit that works enough to get by..well..I wouldn't want to be there when it all starts collapsing.

there is always Quick & Clean (1, Insightful)

Anonymous Coward | more than 11 years ago | (#6410250)

if you know well enough what you're doing,
Quick & Clean is possible .. unfortunately,
if you're breaking new ground, that isn't
always an option.

the fact is - you get paid by producing what
your company wants/needs .. do it how you have
to do it and try your best to not get fed to
the wolves when the shit hits the fan, which it
invariably does. stick to a good, modular design.
even if the innards of the components are dirty,
design in such a way that you can replace these
q&d parts with clean parts later - design is law!
(hahahar) .. no matter how much of a rush you
are in, it will save you time and effort to have
a design document of some sort (even if its only
in your head) .. don't just sit down and bang away
unless you have a clear framework and path laid
down somehow .. eventually you become skilled
enough to Seem like you're just sitting down and
banging away .. but you'll already have it written
in your head

clean and proper code is art, and art can't be
rushed .. but a skilled artist can put out a good
piece more quickly than a fledgling

Documentation, documentation, documentation (1)

vidarh (309115) | more than 11 years ago | (#6410253)

And I don't mean code documentation.

If you feel the pressure to do something quick and dirty, document it.

Don't be strict about development process, be strict about requirements. If your manager want something done quick and dirty, write up a list of the requirements he's asking for, and a short proposal on how to deliver in multiple phases, phase one being the quick and dirty one. Make sure you include a list of risks with launching after completing phase one instead of waiting until completion of the project, and a list of risks of not following up with the fixes/rewrite/whatever.

Insist on signoff, especially if doing it the quick and dirty way would violate your internal processes.

Depends on where you are in your problem space (1)

heironymouscoward (683461) | more than 11 years ago | (#6410255)

Ten products all based on the same model is much less costly than ten different products.
Don't try to innovate and standardise. If it's the first time you do something, do it quick and dirty and be prepared to throw it away.
Quick and dirty is OK, even excellent, the first time, and it will be garbage-grade material. Quick and dirty is wasteful the second and later times. Conversely, slow & excellent is stupid when you don't know the terrain, and essential once you do.
Lastly, try to ignore the marketroids and listen to the client. (S)he will usually know exactly what they need, but be unable to express themselves.

Hmm... (1)

GreyOrange (458961) | more than 11 years ago | (#6410262)

Evil(dirty) will always win because good(Correct) is dumb.

"Quick and Dirty" (-1)

Nix0n (649693) | more than 11 years ago | (#6410268)

is exactly how your mom likes it.

What is the difference? (1)

valkraider (611225) | more than 11 years ago | (#6410273)

I wonder if anyone will have an opinion on this one...

Mine is - What's the difference? Universities have the liberty of thinking about theory and all that jazz. In the rest of the industry, we just want tools to do our jobs. If that tool works but looks like crap on the inside - who cares? Just make the tool the customers want. If it is *too* quick-n-dirty they won't want it. If you take too long to make it nice and elegant - they will have long since lost the need for it. It's just a tool. Make it the best you can in the time you can.

Not just developers or commercial... (0)

TCQuad (537187) | more than 11 years ago | (#6410275)

This sort of thing happens every day, every experiment whether you're in academia or commercial industries. Of course, with research, you have to submit to peer-reviewed journals, which adds another aspect to your dollars (quick) and sense (correct) equation.

The trick is usually finding a balance. Do the quick and dirty, show it as proof-of-principle, and then (or concurrently) do it the right way. It's really the only way to please everyone.

Seen it first hand (0)

Anonymous Coward | more than 11 years ago | (#6410276)

We have just been through this over at the place I work. We used to have a great IT manager who managed the place very well. Our environment is one where the PHBs (VP,EVP etc) don't quite understand the value of IT and this is what the previous guy reiterated every time he got a chance. Then he left because he just did not want to continue doing it when the upper management changed. Then we got a new one who keeps delivering whatever the user asks for. Never quite guides them through (no added value) identifying what they want. So everyone is in a reactive mode now. It all depends on the vision of the leaders. If you have bad leaders and good people it won't be soon before those who do the work will start to look bad. Move on to a place that shares your values!

This argument cannot be won (1)

cubicledrone (681598) | more than 11 years ago | (#6410277)

The people who make decisions will always insist on the quick solution, because business today is all about the "slap a label on it and sell it now" approach.

Discussion of this topic beyond the initial suggestion almost always brings out invincible skepticism from everyone else in the discussion, none of whom will believe there is sufficient intelligence present to do the right thing(tm) (because they, naturally, are the smartest people in the world, and they can't figure it out).

Developers who insist are usually the first to be fired, because they are right, mainly, and because they are also failing to be "team players" which means "agree, even when we are wrong." These programmers were exhaustively qualified as the smartest candidates in the history of employment, of course, before they were hired, but they are universally perceived as wrong when it matters.

Taking the time to do things right is risky, but since there are so many risk-averse whining idiots involved, things are almost never done right.

Those are the facts.
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>