|
I checked this with a bit of uneasiness. There is a kind of expression that delights in making the most of opportunities, and another that relishes abusing them... and i cringe at much of what results from the latter. I've seen code that has left me amazed, filled with awe at the author's method of producing results in the face of limitations that had left me sure no elegant solution could be found. But i've also seen too much code that relies on tricks and self-serving cleverness, when the simple and obvious solution would have sufficed.
As for the rest... Innovation is nice to see, correctness is almost always key, attention to detail can make the difference between a useful once-off routine and one that can be used and re-used for years... Value is always a consideration, but exists on a different level for me; I can no more take value into account while programming than i can effectively edit a letter while writing. And i cringe every time i hear the phrase "Best Practices". Nothing wrong with the concept itself, but it's been used so often as a crutch or an excuse... ugh.
Heh, and looks like the controls usually in place to reduce abuse on the "Other" entry were disabled for some reason.
|
|
|
|
|
Coding is like graphic design. You can either make great beautiful murals, or mass produced simple, concise street signs. It's graphics none-the-less.
Some people aren't concerned with challenging themselves to learn a new algorithm, API, or other programming technique; just want to get the job done. The problem is just-get-it-done code could be really ugly and unmaintainable.
I say it takes a skilled craftsman to hone the techniques over the years to take it to the next level.
---
Shawn Poulson
spoulson@explodingcoder.com
|
|
|
|
|
I agree, and would also like to mention the "most important aspect" of programming depends largely on the scope and environment of your software project.
In my line of work (writing software for a major corporation), following best practices is the most important rule of thumb (in my opinion). It's pretty much a given that other developers will be enhancing and/or fixing the code you write, so it's very important that standards are defined and followed. Otherwise, the cost of maintaining and enhancing applications spirals out of control until it becomes impossible and you're forced to scrap your application for a third-party app. That could mean that your position is no longer needed within the company and is eliminated.
However, if you are writing code solo or in a small group, I could see how following best practices would not be nearly as important. Focus could be on innovation or experimental methods of coding depending on the level of risk.
|
|
|
|
|
I agree, as well. Sometimes you have to put away the geek cap and adopt to whatever shop you're working in. If they want a Perl/CGI solution, don't give them ASP.NET because you think it's best. Sometimes you have to stop being bullheaded about what is best in your opinion and go with what was approved. Taking this wisdom with you will open your mind to great new technologies out there that you would never have considered otherwise. That is a mark of a good coder.
---
Shawn Poulson
spoulson@explodingcoder.com
|
|
|
|
|
Few programmers are software developers. Programmers know how to solve problems. That is, get from point A to point B in code. However, coding should only take 25% of the time. Software developers make sure that the code is actually what the user wants. Achieving a user's goals should be 75% of all efforts. In fact, for the software developer, coding is almost a non-existent issue.
There is a C++ book that covers this and many related topics in an effort to convert programmers into software develoeprs. The book is called "Safe C++ Design Principles"[^].
|
|
|
|
|
River One wrote: In fact, for the software developer, coding is almost a non-existent issue.
Yeah but the problem is that since 100% of all bugs are code related, the code tends to become a big issue if it's not properly developed and tested before it's delivered to the user.
Alvaro
To announce that there must be no criticism of the president, or that we are to stand by the president right or wrong, is not only unpatriotic and servile, but is morally treasonable to the American public. - Theodore Roosevelt
|
|
|
|
|
River One wrote: Achieving a user's goals should be 75% of all efforts.
Bah! 76% and not a bit less!
In most projects, achieving the users' goals should be at or near 100% of the effort. Coding is just a means to that end.
River One wrote: In fact, for the software developer, coding is almost a non-existent issue.
It's always an issue, but need not be the primary (or even secondary) issue. You know a project is in trouble, when the first meeting turns quickly from talk about what is needed, to a discussion of the tools
we want to use to do it. Any programmer worth his salt can probably come up with half a dozen different solutions for a given problem, and this is a good and useful trait, once the problem has been identified and it is time for a solution to be devised.
Analogy: you're remodeling a kitchen. First you decide on the material, position, size, and shape of counters, then you can build them. The construction itself is very, very important, and will have a huge influence on the ultimate utility of the kitchen - but it does no-one any good to start it prior to design.
|
|
|
|
|
What is this optional answer all about: "Thanks for the good information. Keep up this great resource. Best greetings. C Ya" - URLs deleted because they are probably spam.
ColinMackay.net
Scottish Developers are looking for speakers for user group sessions over the next few months. Do you want to know more?
|
|
|
|
|
Looks like a spam bot to me - these submit spam to any form they find on the web.
Regards,
Nish
|
|
|
|
|
It's a spam bot, one of those who keep on trying to spam my guestbook and all my contact forms. They appears out of nowhere, you put blockers into your scripts, they disappear for a few weeks. It's always the same.
_________________________________
Please inform me about my English mistakes, as I'm still trying to learn your language!
|
|
|
|
|
I think the most important aspect is missing, i.e. not a standard answer.
Maintainablility
However "chic" the actual code may be, if it is not maintainable, then the code is worthless!
bum... and I thought I´d got rid of all the bugs
-- modified at 3:27 Monday 27th February, 2006
|
|
|
|
|
I'd say that it is lumped in with "Best Practice" - but it would have been good to separate that out.
ColinMackay.net
Scottish Developers are looking for speakers for user group sessions over the next few months. Do you want to know more?
|
|
|
|
|
From a "what is most important aspect of a software development project" perspective - I would have to agree on "Best Practices" and maybe "Process".
But - for programming - I would say the maintenance aspects are key.
A project can frequently be a qualified success even if it isn't maintainable. But continued work will be an ongoing hell of angry management, missed schedules and long hours if it isn't maintainable.
Personally - I'm sick (and tired) of cleaning up and productizing software projects that others made w/o any thought to maintenance!
Dale Thompson
|
|
|
|
|
Dale Thompson wrote: A project can frequently be a qualified success even if it isn't maintainable.
True, but we're talking about "Best Practice". I would suggest that if it isn't maintainable then it isn't "best practice".
ColinMackay.net
Scottish Developers are looking for speakers for user group sessions over the next few months. Do you want to know more?
|
|
|
|
|
Dale Thompson wrote:
"Personally - I'm sick (and tired) of cleaning up and productizing software projects that others made w/o any thought to maintenance!"
I could sing a song about this
bum... and I thought I´d got rid of all the bugs
|
|
|
|
|
|
To be an artists you got to have talent and train/work really hard.
Greeting from Germany
|
|
|
|
|
KarstenK wrote: and train/work really hard.
That's not necessarily true, IMO. Some people just has it. (whatever it may be)
|
|
|
|
|
Some people have a better talent, but I often saw that to successfully release a software you really have to work hard, and also people with talent have to work really hard (12++ hours and the weekends) - sometimes the underestimated the effort...
I do Shotokan, and there is it analog. I have a little talent (but I train harder than other and see the results)
Greeting from Germany
|
|
|
|
|
I hope that's 12++ hours a day Else I wanna get your job, I make workweeks of 50-60 hours. Working freelance is rather hard.
WM.
What about weapons of mass-construction?
|
|
|
|
|
'Working freelance is rather hard'
It really is.
//This is not a signature
while (I'm_alive) {
printf("I Love Programming");
}
|
|
|
|
|
yet...
|
|
|
|
|
|
The art of implementing CListCtrl is only one aspect of programming...
_________________________________
Please inform me about my English mistakes, as I'm still trying to learn your language!
|
|
|
|
|
Don't tell that to the fanatics!
|
|
|
|