Where is our society moving towards? Now that it is possible to close down access to random websites, claiming that the actual reasoning for such an action is due to copyright infringement. I experienced this just a couple of days ago, when my ISP chose to make certain changes in their DNS server setup making it (partly) impossible to access a page called thepiratebay.org.
Of course this could be circumvented by just changing the DNS server settings on my computer to use an alternate DNS server like the ones that OpenDNS have made available, but this might only be an option for more experienced users. People who solely use computers to search the internet for information might actually experience this as cencurship.
But what is it next time? Websites that post radical opinions? Websites or services that contain content that contradicts the political direction that the current government is pointing out? We've seen this in China, but we, here in the democratic parts of western europe, are way beyond such dictatorial means of censorship, right?
And what about the power of the police? Here in Denmark the police has created body search zones within the city of Copenhagen. Official reason is the increasing amount of violence, but there seems to be no officially defined end date for this parade of dominance.
I'm not saying that I would prefer a more violent society, I don't say that we should not have a strong police force who are able to work efficiently, but when the only argument for body search zones is that it is an efficient tool that the police can use, I find it barrier towards police raids and people disappearing, which might turn out as very efficient tools for certain missions, I find the barrier between our current society and a police state very thin.
Combined with the tolerance of more and more surveilance cameras in the public domain, although it is clearly prohibited by law, I find that there is a tendency towards a more police dominated society where civil rights are transgressed further and further.
If we just stand by watching where will this end?
This blog is about software development; patterns; best practices. Technologies I prefer: C#, C, .NET web stack, XML, XSLT, Razor, API's, Sitecore, CMS, and and more. This blog will primarily be about issues I encounter on the way, in order to remember it better myself.
Sunday, February 8, 2009
Saturday, February 7, 2009
MScThesisContainingPex
Now wait, where did all that time go? It feels like last week I posted the last time, but with an exciting job, a pregnant girlfriend, a study and an upcoming master thesis project I guess time just does fly.
Now back to the more technical stuff:
I've been talking to my thesis supervisor about which projects I consider interesting to work with for the next couple of months and he suggested a very promising testing framework that is under construction in microsoft research called Pex.
It is an automated white box testing framework that helps identify corner cases of input to your code. It will display these corner cases and let you generate Unit tests with these inputs as parameters. Yes that's right: Parameterized Unit tests. That is pretty cool!
The basic work flow is as follows: write your code(needs to be public methods), right click within the method you wish to generate input for, Pex will try to analyze every statement of your code and ensure that every code path is followed.
When the input is generated you simply select all the generated rows and hit save. This will generate Unit tests in a separate project, just like you would setup any other Unit test project.
Now you can run any of these corner cases as a regression test of your method and be sure that these corner cases will be tested, too.
If you want to extend the tests that Pex generate, you simply extend yet another generated .cs file that contains your Parameterized Unit Tests(PUT).
If you think any of this could be of any help to you or your project, do visit the clever guys running the project at research.microsoft.com/pex/ and check out the documentation.
I will definitely write more on this project in the coming months and discuss the opportunities of this interesting framework with colleagues and fellow students.
Now back to the more technical stuff:
I've been talking to my thesis supervisor about which projects I consider interesting to work with for the next couple of months and he suggested a very promising testing framework that is under construction in microsoft research called Pex.
It is an automated white box testing framework that helps identify corner cases of input to your code. It will display these corner cases and let you generate Unit tests with these inputs as parameters. Yes that's right: Parameterized Unit tests. That is pretty cool!
The basic work flow is as follows: write your code(needs to be public methods), right click within the method you wish to generate input for, Pex will try to analyze every statement of your code and ensure that every code path is followed.
When the input is generated you simply select all the generated rows and hit save. This will generate Unit tests in a separate project, just like you would setup any other Unit test project.
Now you can run any of these corner cases as a regression test of your method and be sure that these corner cases will be tested, too.
If you want to extend the tests that Pex generate, you simply extend yet another generated .cs file that contains your Parameterized Unit Tests(PUT).
If you think any of this could be of any help to you or your project, do visit the clever guys running the project at research.microsoft.com/pex/ and check out the documentation.
I will definitely write more on this project in the coming months and discuss the opportunities of this interesting framework with colleagues and fellow students.
Subscribe to:
Posts (Atom)