Controlando la calidad del CSS con CSSCop for Visual Studio!

Definitivamente el título les debe sonar muy familiar si leyeron el post anterior!
image

Asi es, hay forma de verificar la calidad del CSS que vayamos construyendo!
Para resumir el asunto el año pasado se definió un conjunto de reglas para determinar la calidad de los CSS, todo esto basado en performance, mantenibilidad, compatibilidad y otros aspectos muy interesantes.

Este pack fue denominado CSS Lint y tenemos además una herramienta en línea que nos ayudará a herir nuestros sentimientos 😀 (asi dice en la página, jeje)
image

Pues con esta extensión para Visual Studio 2010 no necesitamos visitar la página 😀
image

De momento no hay entorno visual para configurar las reglas, asi que todo, vía un archivo XML!
image

image

Si que son varias no? Buscan más detalle de las reglas? pues en esta dirección encontrarán las reglas y en esta otra dirección la extensión del CSSCop for Visual Studio 2010  🙂

Saludos!
@Jersson
PD: De momento se llama CSSCop pero ya vi que en cualquier momento le cambian a CSSLint for Visual Studio, sino vean el nombre del archivo que se descarga 😀

Controlando la calidad del JavaScript con JSLint for Visual Studio!

Hola amigos!
Les cuento que tengo muchos post por publicar pero como diría Jack, vamos por partes!
Creo que el título explica el objetivo de este post, pero veamos, hace ya un tiempo que el gran Douglas Crockford (Maestro!!!) definió un conjunto de reglas y buenas prácticas (hasta libros!) de programación en JavaScritpt,  las cuales podemos verificar por una herramienta de control de calidad denominada JSLint. Les confieso que desde la primera vez que conocí este sitio quedé pegado!!!

Y como todo lo bueno debe evolucionar o ser mejorado por otras personas, gracias a la Galería de Visual Studio me encuentro con la extensión de JSLint para Visual Studio!!

image

Si bien es cierto de momento le dan soporte a Visual Studio 2010 esta herramienta es lo máximo!!
Por ejemplo, luego de hacer una corrida sobre la librería de jQuery nos encontramos con más de 300 observaciones!!

image

Algunas si que son obvias eh!
A pesar que para ubicarnos sobre la observación aprovechamos el doble click para llegar a la línea de código observada, lo que me temo es que posiblemente alguna recomendación no se comprenda, entonces debería haber una referencia adicional (como hay en otros casos o herramientas), de paso que aprovechamos el clásico click derecho / Show Error Help
image

Ahora… digamos que podemos hacer algunas excepciones al respecto, interesante no? 😀
image

Si es que se preguntan cuáles son las reglas de validación que se estan considerando, pues Tools / JSLint Options…
image

image

Si notamos las reglas se encuentran agrupadas de acuerdo a como fueron evolucionando las recomendaciones, asi es, hay versiones al respecto!
image

Antes de despedirme les dejo la dirección de la extensión, o si no pueden buscarla en el administrador de extensiones!
image

En general esta herramienta me ha gustado como no tienen idea, personalmente soy un fanático del Code Analysis asi que ya se imaginarán!!!

Un abrazo.
@Jersson

Buenas noticias: Tenemos NDepend!

Hola amigos!
Les cuento que al iniciar la semana los amigos de NDepend me escribieron para confirmarme que me enviarían una licencia! Es mas, ya me la enviaron y puedo usarla para investigar más a detalle y realizar publicaciones en el blog, no les parece genial?! Tenemos un nuevo sponsor!

image
NDepend es una herramienta que tiene como finalidad analizar como vamos construyendo nuestra aplicación y lo más importante, si vamos cumpliendo con algunos criterios de calidad.

En las primeras versiones se usaba como un complemento externo al Visual Studio, ahora, ya con la herramienta completamente integrada al Visual Studio me veo en la necesidad de volver a utilizarla, ya les contaré de todas las bondades del producto, no desesperen! 
De momento los invito a revisar un post que escribí hace algunos años cuando tuve la oportunidad de usar el producto, les cuento que incluso pude conversar vía correo con su creador, hasta me escribió en español:D

No me quedan palabras para agradecer como es debido por la confianza que tienen para enviarme sin muchas complicaciones las licencias que obtengo, asi que, como siempre, muchas gracias!! y espero no decepcionarlos!

Saludos
@Jersson

Visual Studio 11 Beta + Color = Visual Studio 11 RC!

Hola amigos! les escribo para comentarles que hoy mientras revisaba el blog de los amigos de Visual Studio me encontré con una noticia muy interesante respecto a los cambios que se vienen en el nuevo release del Visual Studio 11, en este caso ya estamos hablando del RC o Release Candidate, el cual vendrá con una respuesta muy clara al feedback de los usuarios
Esta respuesta es simple, tendremos algo de color!

image

Personalmente creo que las mejoras al diseño eran necesarias, pero tambien quiero comentarles que poco a poco me iba acostumbrando a la falta de color, me sigue pareciendo interesante el concepto minimalista y plano que viene con el Visual Studio 11, veamos que nos traen en los siguientes releases 🙂

Les dejo el enlace al post mencionado lineas arriba, el cual contiene muchas otras imágenes como la mostrada anteriormente, y si tienen instalado el Visual Studio 11 encontrarán que algunas opciones si vienen en color, para muestra (literalmente) un botón :D, esto en View Other Windows

image
Sin más me despido
Un Saludo!

@Jersson

Libros gratis gracias a Microsoft Press!

Que tal amigos!
Les cuento que hace un par de días los amigos de Microsoft Press han publicado un post en el cual hacen un resumen de los libros que han venido entregando en formato digital (PDF, ePub y/o Mobi) y claro, de libre descarga!

image

Algunos libros ya han sido mencionados por este medio pero vale la pena resaltar que en este nuevo resumen, se mencionan muchos más (SQL Server 2012, SQL Server 2008 R2, Windows 7, Visual Studio 2010, Windows Phone 7 y muchos mas!), y si tienes un lector electrónico como un kindle, genial! pues en algunos casos cabe esta posibilidad.

Les dejo el post original, el cual tiene un enlace a cada uno de los libros mostrados en la imagen 🙂

Pues como siempre digo, ya saben, es gratis, no tienen excusa!
Un Saludo
@Jersson

Copy Paste Driven Development

Alguna vez les ha ocurrido que tienen un amigo, conocido o compañero de trabajo (o vamos, nosotros mismos!) que antes de comenzar sus actividades de programación/documentación (o incluso modelamiento) nos viene con una pregunta como:

”no tienes algun ejemplo o modelo para …? lo necesito para guiarme.”

Cada vez que escucho ese tipo de consultas o comentarios me pongo a pensar en los posibles entregables que se generarían a raíz de este modelo, ejemplo o plantilla.

image

Cuando se trata de documentos me he topado por lo menos con el mismo indice, lo cual no tiene nada de malo si el contenido viene con el trabajo tal como debe hacerse. Pero tambien existe esa alternativa que no nos gusta, ese documento que casi siempre tiene errores de redacción y peor aún, de revisión, ese documento que muchas veces termina mostrando información del proyecto anterior, con fechas y empresas que no tienen nada que ver con el nuevo documento!

Si revisamos un diseño y nos encontramos por ejemplo con títulos que dicen DDD por todos lados, mucho cuidado si les pides algo de detalle o peor aun, les preguntas, qué es el dominio?
Si la respuesta no los convence, posiblemente ese diseño tuvo origen en algun libro, proyecto o tiene demasiadas buenas intenciones y poco fundamento… es decir, fue tomado como base y de eso no pasó.

En programación el indice aumenta, ya que con el internet podemos preguntarle a muchas personas si tienen un ejemplo, modelo o guía. De esto peor si estamos en la época en la que no conocemos mucho y nos apegamos (literalmente) a copiar y pegar y si ya funciona, pues dejalo asi

Es por eso que cuando revisamos el código encontramos algunos bloques comentados, variables o campos que no comprendemos y tenemos incluso comentarios en otro idioma :D 
Acaso no les ha pasado que necesitan una función javascript y terminan modificando un ejemplo que está a medio terminar?

Estas características son las que me recuerdan a la escuela del copiar y pegar, escuela del CPDD o Copy Paste Driven Development, la cual debemos evitar a toda costa!

image

Con esto no quiero que piensen que estoy en contra de pedir ejemplos, modelos, usar guías de terceros o bases de proyectos pasados (vamos, que la mejora contínua existe y debemos aplicarla!) pero creo que siempre debemos tomar en cuenta algunas consideraciones:
– Si estamos comenzando en este mundo loco de la programación, un modelo se debe tomar tal como viene. Al menos la primera vez.

– Si hablamos de un documento en particular, no me refiero a que tomemos como base al documento completo! lo que nos debe interesar es la estructura del mismo, osea el indice 🙂

– Si fuera un modelo de programación, de buenas a primeras no podemos cambiar -por ejemplo- una estructura de capas simplemente porque nos gustaría poner una capa “solo para probar” o “para mejorar” además “malogrando se aprende

– Para implementar mejoras al modelo que estemos usando (documental o de programación), uno debe ponerse en los zapatos del que inició la idea y continuar con alguna modificación siguiendo por lo menos una línea acorde a la original.

– Si nos avocamos a ser partícipes de esta escuela, hay que tener mucho cuidado con el nivel de mantenibilidad que brinden nuestros entregables, tengamos en cuenta que en algún momento nos preguntarán “¿por qué hiciste eso?” 

– Mucho cuidado con lo que encontremos en internet, ya que gracias a esta gran red, es muy facil ser gurú y a veces uno se topa con soluciones muy interesantes pero tambien están otras soluciones de personas que como nosotros, también están aprendiendo y con ese riesgo latente podríamos estar copiando una mala práctica, una buena intención o un… “me salió luego de varios intentos asi que mejor no lo toco”

Los invito a que cada vez que se necesite o se tenga una solución a la mano, consideremos ser más estrictos en revisar las fuentes, además claro de comprenderlas, pues de esa manera nos estaremos alejando de la escuela del copiar y pegar, de esa escuela que con el tiempo nos genera problemas interminables, que ademas de hacernos esclavos de malas prácticas, nos podría convertir en esclavos de nuestros errores :( 

Asi que ya saben, no seamos esclavos del Copy Paste Driven Development!

image

Un abrazo
@Jersson
PD: Copiar y pegar no es malo, lo malo es no conocer lo que copiamos y pegamos 🙂

Visual Studio 11: Page inspector!

Que tal amigos! han pasado varios dias desde la última publicación no? pues se me fueron volando pero confío que no volverá a suceder 🙂

Les cuento que revisando el nuevo Visual Studio me encuentro que al hacer click derecho sobre un archivo cshtml (ojo que estamos trabajando en un proyecto MVC con Razor y C#) me encuentro con la opción denominada Page Inspector.

image

Cómo funciona esto?
Primero les comento que si han trabajando con herramientas de inspección como las que vienen en el Internet Explorer, Chrome o Firefox esta imagen les dará una idea

image

Ya que nos hicimos una idea, nos vamos al Page Inspector y nos encontramos con esta herramienta de inspección de contenido completamente integrada al Visual Studio 🙂

image

Se ve muy interesante y personalmente estoy encontrando algunos bugs, supongo que se debe a mis experimentaciones 😀

Los invito a darle una revisada a esta nueva herramienta, la cual segun entiendo tambien viene disponible en el Visual Studio Express for Web =)

Un Saludo
@Jersson