Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Changing times

by exussum0 (Vicar)
on Jan 15, 2004 at 17:46 UTC ( #321622=note: print w/replies, xml ) Need Help??

in reply to Changing times

I'm sure those who have worked developing products for companies, the bottom line of the ideal business-man is, it works well enough to sell and keep selling. They don't want the perfect, most efficent, most elegant product. They want it to do X, Y and Z right now, and when A, B and C gets thought up, they'd love it tomorrow.

The ideal programmer wants things to work really well, easy to develop for etc etc.. with infinite time, or at least until it bores them. :)

As an idealist to some degree, I push for refactoring, doing things right, prototyping etc etc.. while I get a huge pushback for getting it done within acceptable deadlines. There are process related routines and standards that companies can get to, so that business can start an idea, and developers can polish off a finished product.

For instance, prototyping. You can test all the points in preliminary prototypes, to show some sorta baseline of comparison to how it should work. Think of it like the omega(), as there is minimal load and users hitting the systems with weird sitatuations. If development is a much slower environment, it may be closer to real life. But you get a feel for what you are doing. Eventually, you can port your prototype to your ideal language or grow it to your final product. A research phase also helps, where you can create pre-prototypes and architectures to play around with.

But at any rate, perl is a great language for at least research and prototypes. It's a VERY quick-to-write language. You can flush out architectual mistakes quickly. Many script languages are like this, and it is typical to have some sorta RAD interface for building these throw-away things. Or create non-throw-away stuff if you wanna grow your final product.

Not sure what you were looking for in a response, but adding my two cents.. for whatever it was worth :)

Play that funky music white boy..

Replies are listed 'Best First'.
Re: Re: Changing times
by mr_mischief (Monsignor) on Jan 16, 2004 at 17:49 UTC
    I'm not sure what I wanted in a response myself, or if one was even necessary. That you replied with a particular poitn of view does add some texture to the topic, though.

    I write most of my code either for internal use at my daytime employer or for internal use at one of my freelancing customers. It's never good enough to sell and keep selling, because it's code written for hire. I'm fortunate to keep copyright over most of it, and am allowed non-exclusive use clauses by many of my clients. So some of the code does get released, but not much. Also, many of my clients insist that if I release anything that they paid me to write, that it becomes Free Software under the GPL. Some even insist it gets released free of charge. I'm more interested in selling repeat business to these customers in the form of more new code or other services, and code written for a custom need isn't necessarily the best mass-market product in the first place. When there's an upgrade for this code, it's generally at the customer's pace, not at the pace of a marketing department.

    Some of my code I write as a hobby or to support my other hobbies. I'm either writing this for myself or for a member of a community to which I feel attached, so I'm interested more in a better program than a faster turnaround here as well.

    So whatever pressures some people face, some of us have the luxury of creating a solution to fill a need, instead of creating a need that needs a solution. That's the point of view from which I've developed my habits and philosophies.

    Christopher E. Stith

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://321622]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (3)
As of 2018-05-20 13:11 GMT
Find Nodes?
    Voting Booth?