I have just posted this question on the Programmers forum. It's a valid question and I would be interested if someone would answer it.
seen from United States
seen from Canada
seen from Australia

seen from Singapore

seen from United States

seen from United States

seen from China

seen from China
seen from Philippines
seen from Russia
seen from Singapore

seen from United States
seen from United States
seen from Russia

seen from United States
seen from China
seen from Spain

seen from Australia
seen from South Africa
seen from China
I have just posted this question on the Programmers forum. It's a valid question and I would be interested if someone would answer it.
This course instructs the developer on how to use the Code Contracts extension for Visual Studio.
Code Contracts is an extension for all (non-free) versions of Visual Studio. Under the assumption that it is not the responsibility of a class to enforce preconditions (as it is with the design by contract paradigm), it allows to developer to make claims about preconditions, postconditions, and object invariants of a method when called external to that class.
I am enjoying the Christmas holiday. I get the chance to watch Pluralsight courses. I stumbled upon an interesting (intermediate) course for anyone with an interest in using formal logic as a basis of improving one's code. I have managed to watch the first hour (covering the first two modules). The first module was a refresher course on predicate calculus, which took me back to my university days. The second part shows an application of predicate calculus, albeit not always a direct one... I look forward to the remainder of the course. I am sure to fit it in within the next few days.
CodeContracts in C#: my impressions.
If you're a .Net programmer like me, you should probably familiar with unit testing. If you are familiar with unit testing, you are hopefully also aware of the Test Driven Development paradigm (or TDD for short.) If you are aware of TDD, then maaaaybe you've heard of CodeContracts.
If you haven't heard of this, it's a new technology still being developed by the microsoft research department, that kind of takes unit testing and test driven development the next level. I spent the day playing around with the technology thus far, and here are my impressions:
First off, I'm in love with the concept. Whereas unit tests verify the test you've already written, code contracts can essentially verify your code your going to write in the future. You write what each method Requires and what each method Ensures, and then the CodeContracts technology analyzes your code and finds flaws in your contracts and even suggests new contracts you could add.
That which can be done with machines should be done with machines. If the machine can check the robustness of my code and suggest improvements, I'm pleased as punch.
The problem that I had with the technology (which ultimately lead to me stripping it out of my new project) is that my contracts would fail and I wouldn't be able to figure out why. Either the contracts are failing when they're not supposed to, or more likely, I'm simply not smart enough to see the point of failure. And in that case it is crucial that the technology provides the feedback mechanism to help explain to me how to repair my broken contract.
It felt like playing an adventure game where I couldn't figure out the solution to a puzzle, and there was no online guide to get me past it. I decided that if I couldn't fix contracts it was telling me were broken, adding the system to my project did not add enough value to be worth the cost. In the future I look forward to revising the technology and seeing how it has progressed, but for now it's back to vanilla unit tests.