lorddev / coding-standards Goto Github PK
View Code? Open in Web Editor NEWCoding standards wiki with a focus on C#, as affected by StyleCop + Resharper
Coding standards wiki with a focus on C#, as affected by StyleCop + Resharper
From The Elements of Style
Sentence should contain no unnecessary words, etc.
Same applies to software. Avoid the bloat.
Hi, rather than maintaining your own guidelines, may I recommend something I have been maintaining for almost 10 years now? http://www.dennisdoomen.net/2012/11/the-all-new-coding-guidelines-for-c-30.html
ReSharper + StyleCop, and when to ignore the noise vs. take their suggestions
For GitHub pages (published in the gh-pages branch), add a JavaScript markdown parser so we can bypass Jekyll.
Be a boy scout coder. Always check in your code cleaner than it was when you checked it out.
Some companies will frown on this. That's how you know it's not a place where you want to work.
console.log() throws an error in IE <=9 when you don't have the debugger open. So put in a code snippet that will serve as a placeholder.
Raphael.js isn't supported in old IE, so have a workaround.
List of recommended books to include:
Start a new topic for Data Access Objects within the Design Patterns category. Focus is on its use in .NET, as it's a J2EE pattern and virtually all searches for it end up on Oracle.
Bob Martin:
Try to write tests that force exceptions, and then add behavior to your handler to satisfy your tests. This will cause you to build the transaction scope of the
try
block first and will help you maintain the transaction nature of that scope.
This issue represents the goal of incorporating useful ideas borrowed from the Microsoft Class Library Guidelines and the IDesign standards. Make sure to add a footer for attribution.
Examples: Namespacing, numbers of parameters, etc.
Need top-level categories in which we can add our new pages.
No += allowed.
Provide links to benchmarks concerning StringBuilder
vs string.Format()
vs string.Concat()
Move the bibliography section to a separate page, and re-purpose the footer as a call for contributions.
New topic: Treating your JavaScript like source code rather than an afterthought
From Jethro Larson:
Write good commit logs that state what was changed and link to issue trackers. Don't mix spaces and tabs! Don't over plan, don't over document, don't over engineer, yagni, kiss, make it work without js first; write the manual first; Code like you're designing an API; start with the user experience not the db; know the page lifecycle; understand the waterfall; make everything non-blocking; don't forget the robots
Add a section about cyclomatic complexity.
One of the ways you can tell a company isn't a good place to work is if you pride yourself on certain things you learned from Jeff Atwood and practically every time you exercise those skills you get in trouble. Be it keyboard choice…
http://www.codinghorror.com/blog/2004/11/dont-be-afraid-to-break-stuff.html
One of the tenets of Agile methods is that communication must be face-to-face. This doesn't work so well with remote teams. Though it's possible to use free videoconferencing tools like Google Hangouts, the creators of the Agile methodology didn't really have this in mind, and would tell you it's not true Agile unless you're actually in the same room. Furthermore, scheduling issues become much more complicated. Not only could you have issues with different time zones, but many independent developers have multiple projects going on. If they had to have a daily scrum with every team they were on, that would really eat away at their productivity.
Important http://www.codinghorror.com/blog/2009/02/paying-down-your-technical-debt.html
Favor existing solutions.
If you can't explain the problem simply you can't solve the problem smartly.
The bug is probably in YOUR code.
Invest in a robust debugging environment.
Sharpen your saw
Stay out of quadrant 3 http://c2.com/cgi/wiki?FourQuadrants
User Experience is everyone's responsibility, QA is everyone's responsibility, priority is everyone's responsibility, maintenance is everyone's responsibility. All of it is YOUR responsibility.
You've been granted precious moments of your users' attention, cherish them.
Ethics matter.
Nothing will be more important for your development as a professional than communication.
Courage is required.
I intend to have a whole page on "Functions should do one thing", but I also think it would be helpful to have a single itemized list that summarizes the points of Clean Code, that people can refer to periodically as a refresher.
One way to determine a given project's coding standards may be to simply choose whether or not you will use StyleCop with your installation of R#.
I don't know about you, but I'm the kind of developer who always wants to get better. Whenever I find ways to improve my process or do things better, I try to implement what I learned right away.
As I have learned, I have found that there are some things that people do out of habit, and some things people do because it's a pattern that they've learned from others, and they've learned that there is a reason to do things this way
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.