Hi Everyone,

I know this is a large topic area when talking about coding standards and best practices. I would gratefully appreciate some constructive feedback on this area. To give you a heads-up, I'm designing and developing a team-based tool that aims to help with coding standards and best practices. It's currently called RuleX and can be found here SNIP

If you have a moment, it would be gratefully appreciated if I can get your opinion on these few questions?


1. If you could have a coding standards analysis tool, what areas of your code would you like to check specifically?


2. Is there a particular language that you wish you could analyse? For example, HTML, Javascript or C++.


3. What appeals to you the most in a coding standards / best practices tool - speed, presentation, features?


4. What do you find missing from your day to day coding?


Thank you for your help.

Simon.

Coding standards??? According to who's standards? My standards and your standards could be quite different, so I doubt there is any tool that can or could do a very good job of it. In a group of coders larger than 1 person that's what peer review does -- each coder review and analyzes the code written by the other coders to determine if the code meets company coding standards, whatever that is.

Somewhat at odds with Ancient Dragon: I think that coding standards are useful prior to peer review, because code that already meets the local/shop spec cuts down on noise during the review process.

Do I need a tool to enforce standards? Not so much. Even in a huge shop with lots of new coders, because a truly useful coding standard should fit on a single sheet of paper in easily readable print (with a 10 page full-service addendum including examples and reasoning) so even total newbs can get it right, at least after their first horrible review experience.

what do you find missing from your day to day coding

Clarity, cleverness (but not too clever), consistency, good unit tests and high output. (Though I usually manage at least two of the five and on good days four of them)

>>Somewhat at odds with Ancient Dragon: I think that coding standards are useful prior to peer review,

I did not say code standards are not useful. Just the opposite. You can't have a peer review without them. My objection was for a tool that tris to enforce someone's coding standard on the world.

>>Somewhat at odds with Ancient Dragon: I think that coding standards are useful prior to peer review,

I did not say code standards are not useful. Just the opposite. You can't have a peer review without them. My objection was for a tool that tris to enforce someone's coding standard on the world.

Ok, on a more careful re-reading, I am indeed not even somewhat at odds with the elderly firebreather.

It might be kind of fun to try to create some kind of coding standards filter that could read the equivalent of the one-page company coding standards doc and emit a critique of my code... for any pair of 'company standards doc' and 'my code'. But imo it would end up being shelfware.

I imagine that by "coding standards" you mean things like requiring code to be "commented," or to be tested on some schedule, or to adhere to some process from flow chart to beta. Historically standard-setting organizations have given their "seal of approval" to companies who comply with their standard -- sometimes genuinely hoping to advance the industry as a whole, but sometimes to give a competitive advantage to those who earn the seal.

There's a legal side to this too.

At some point -- like when a VC comes around -- a company may be required to promise it really owns the code it's developing. Owning code requires management practices that aren't always in place from the start, including:

-- rules about whether programmers can use open source code

-- record keeping that identifies what 3rd party code is used (open source or otherwise)

There are tools now that claim to be able to scan code -- much in the manner of a anti-virus program -- to search for signatures of common open source code.

(I'm not "against" open source -- far from it -- but sometimes it requires the source of an entire project to be made publicy available, and not every developer wants or expects that result).

- Charles B. Kramer

SNIP

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.