In the last months I've seen how SEO has become a day-to-day conversation in web projects. From web-standards like XHTML, to better ways to display and link content (REST style URLs, no querystrings, and so on...) But few people talk about how to organize and measure content quality to improve the Page Rank.
So I started to monitor how people find and use this blog.
Due to my current job situation I can't blog too much, however "Just Coding" still have some activity, look at the last 14 days:
929 Visits, 882 Unique Visitors and 1,203 Page Views
I thought this is because I'm linked from El Ventanal de Rosa or MSDN Spain
Also, I hope to to see that some of my little contributions to .Net development like the trx2html tool, or the FileRollerTraceListener , or maybe some of my presentation related materials, are useful to someone.
However the results are incredible, see the stats:[ http://www.w3counter.com/stats/popular_pages/2505/20/0 ]
The most viewed page with more than 55% page views is Just Coding : Mount ISO Files in VISTA !!! Note that this page is just an aggregated kind of post with no "original content", and have had no changed since 27Oct2006.
This is a development blog, I'm not an expert on ISO neither the VISTA OS, and I've never wrote anything related to ISO formats, so why this page has some many visits?
We have to look at the sources (or which web sites redirect users to here) http://www.w3counter.com/stats/referrers/2505/top/20/0
Wow !! more that the 76% percent comes from Google !!, and do you know with which search keywords?
|
1
|
mount iso vista
|
5,093
|
15%
|
|
2
|
vista mount iso
|
3,808
|
11%
|
|
3
|
iso mount vista
|
861
|
3%
|
|
4
|
vista iso mount
|
673
|
2%
|
|
5
|
css creator
|
504
|
1%
|
|
6
|
mount iso in vista
|
429
|
1%
|
|
7
|
vista iso mounter
|
398
|
1%
|
|
8
|
mount iso file vista
|
305
|
<1%
|
|
9
|
iso mounter vista
|
217
|
<1%
|
| |
|
|
|
and I thought because I wrote that post just after VISTA RTM, maybe I had been one of the first entries to get indexed. But we know this is a bad result for that search keywords, because my blog and that page are not relevant about this areas.
I could delete that page from the index, also destroy it from my blog, however this URL maintains my blog active, so I'll keep it there...
thx::G ;-)
I've been interviewed by some folks of DPE, here in Spain. You can watch it here: http://comandotomate.net/archive/2008/02/13/entrevista-a-rido.aspx
I have released a new version (still in beta) that support Visual Studio 2008 Test Results File Format.
It has been really easy, the underlying schema was pretty similar, so I could reuse the whole UI without modification, just 2 hours of XSLT refactorings ;-)
http://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=trx2html&ReleaseId=10672
Note that this release only supports the 2008 format.
Next versions will support 2005/2008 in one binary file.
Since gotdotnet is phased out, I'm moving all my samples to codeplex (
http://www.codeplex.com/ridocode), including the famous
FileRollerTraceListener
I have moved the trx2html project to CodePlex
http://www.codeplex.com/trx2html
I'm looking for members and collaborators !!
Today I've been talking about CI with TFS in Madrid, Spain. The event has been organized by the local DPE division at Microsoft Spain.
The Spanish Title was: "Integración Continua con Team Foundation Server"
Hope everybody enjoyed the show !!
here are the slides: http://www.slideshare.net/rido/integracin-continua-con-team-foundation-server/
The demo, was based on my last workshop about TestingWithVS, anyway I have refactored the code to focus on CI. You can download it here
If you use TFSBuilds with VS UnitTests, you know how to inspect the TestResults: you must download the whole directory to your local machine, and sometimes this folder could be pretty huge.
So, if you want to check the error details of your tests, you can use my tool trx2html to convert the *.trx files to html, so you can see the reports with any browser.
Here are the instructions in 3 simple steps:
1) copy the RidoTasks.dll file to your source tree
$(SolutionRoot)\RidoCode\tools\RidoTasks.dll
2) Reference the msbuild task in TFSBuild.proj
<
UsingTask TaskName="RidoTasks.trx2html" AssemblyFile="$(SolutionRoot)\GEN4\tools\RidoTasks.dll" />
3) Convert the test reports after drop the build results
<
Target Name="AfterDropBuild">
<CallTarget Targets="CreateTRXReports" />
</Target>
<Target Name="CreateTRXReports">
<CreateItem Include="$(DropLocation)\$(BuildNumber)\TestResults\*.trx">
<Output TaskParameter="Include" ItemName="trxfiles"/>
</CreateItem>
<RidoTasks.trx2html FileName="%(trxfiles.Identity)" />
</Target>
Today's workshop was based on a demo to show all the vs features about testing, it covers:
- Unit Tests (With MockObjects)
- Integration Tests (Using ASP.Net Host)
- Functional Tests (With Web Tests)
- Load Tests (With testcontrollers and test agents)
I've packed all the code in a zip that you can download here:
http://blogs.msdn.com/rido/attachment/1159890.ashx
Tomorrow I will be talking about Testing with VS2005, here is my presentation:
http://blogs.msdn.com/rido/attachment/1156243.ashx
If you are interested in the code samples, please let me know and I will send you the latest version
I'm working on a presentation about Testing, and one of the technics I would like to show is MockObjects.
One of the mock objects I want to create is a DataAccess Layer, and this one should throw SqlExceptions, however the SqlException class is sealed and has no public constructor.
I found a comment about it here: http://www.taylor.se/blog/2006/06/09/mocking-sqlexception/
But the implementation does not work with .Net2, so I have to refactor the code to create a SqlExceptionCreator, and here it is:
using System;
using System.Data.SqlClient;
using System.Reflection;
using System.Runtime.Serialization;
public class SqlExceptionCreator
{
public static SqlException CreateSqlException(string errorMessage, int errorNumber)
{
SqlErrorCollection collection = GetErrorCollection();
SqlError error = GetError(errorNumber, errorMessage);
MethodInfo addMethod = collection.GetType().
GetMethod("Add", BindingFlags.NonPublic | BindingFlags.Instance);
addMethod.Invoke(collection, new object[] { error });
Type[] types = new Type[] { typeof(string), typeof(SqlErrorCollection) };
object[] parameters = new object[] { errorMessage, collection };
ConstructorInfo constructor = typeof(SqlException).
GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, types, null);
SqlException exception = (SqlException)constructor.Invoke(parameters);
return exception;
}
private static SqlError GetError(int errorCode, string message)
{
object[] parameters = new object[] {
errorCode, (byte)0, (byte)10, "server", message, "procedure", 0 };
Type[] types = new Type[] {
typeof(int), typeof(byte), typeof(byte), typeof(string), typeof(string),
typeof(string), typeof(int) };
ConstructorInfo constructor = typeof(SqlError).
GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, types, null);
SqlError error = (SqlError)constructor.Invoke(parameters);
return error;
}
private static SqlErrorCollection GetErrorCollection()
{
ConstructorInfo constructor = typeof(SqlErrorCollection).
GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new Type[] { }, null);
SqlErrorCollection collection = (SqlErrorCollection)constructor.Invoke(new object[] { });
return collection;
}
}
Once my box is ready, I need to WinSDK. The download format from MSDN is an ISO file, so I need a tool like VirtualCD (but this one works only for XP).
So I found
Mounting ISO Images in Vista 5536 http://richmercer.com/archive/2006/08/29/Mounting-ISO-Images-in-Vista-5536.aspx
referencing magic iso: http://www.magiciso.com/tutorials/miso-magicdisc-overview.htm
Today I have switched to Vista RC2. After reinstalling the OS I have to install all the tools I use everyday. Here is the list
- Office Beta2
- OneNote 2007
- Project 2007
- SQL2005
- Visual Studio 2005 Team Suite
- Enterprise Library
- Composite UI Application Block
- Smart Client Software Factory
- Windows Live Writer
When you setup TFS for the first time, usually you use the TFSSetup account. And with this account you are going to login for the first time.
However, once your environment is complete, you will want to login as a different user, but the credentials you used for the first time is already cached...
The first idea I have in mind was: remove the server from the registered server list and add it again, but... the button "remove" is disabled.
After digging (more than 30 minutes) I found the solution here: http://forums.microsoft.com/MSDN/ShowPost.aspx?Pos...
So here is the tip, go to control panel, UserAccounts->Advanced->Manage Passwords and remove the server from the list.
Last week I had to stress a web portal running on x64 machine. Everything works as spected but when I tried to analyze ASP.Net counters I found there was little problem, every ASP.Net related counter was empty, I mean with no values.
And this is because my loadagent was running in 32-bit machine.
I've found http://blogs.msdn.com/edglas/archive/2006/09/06/74... but it's too late to try it :-(
This experience makes me think ... ¿Do we really need 64bit for application servers (IIS)?
One of the most wanted features I miss from the VS2K5 platform SDLC tools is the ability to manage databases as plain text files, and not only the schema but also the minimal data you need to recreate your db from a command line.
Now this tool is started at codeplex, you can try it here SQL Server Hosting Toolkit