MSDN Code Gallery
![]()
Enorme repositorio de código, ejemplos, etc de prácticamente cualquier tecnología Microsoft. Ampliamente recomendable:
La forma en que funcionan las cosas en el negocio de las TI
Cualquier parecido con la realidad… es inevitable
10 ASP.NET Performance and Scalability Secrets
Una excelente y obligada lectura para cualquier desarrollador que utilice ASP.NET sobre como optimizar el peformance de una aplicación Web y hacerla más segura. Este artículo es escrito por Omar Al Zabir autor del libro “Building a Web 2.0 Portal with ASP.NET 3.5” que recomendé en días anteriores:
http://www.codeproject.com/KB/aspnet/10ASPNetPerformance.aspx
Preguntas y Respuestas sobre distribución de audio y video con Silverlight
Me acabo de encotrar este FAQ al respecto publicado en Expressate:
Después de revisar el proceso de producir, hospedar y publicar una aplicación Silverlight en un sitio Web desde Silverlight Live Streaming, dejo respuestas a algunas preguntas que me han hecho alrededor de este proceso. Si tienes alguna pregunta específica no dudes en dejarme un comentario, prometo que si contesto
P: ¿Cómo puedo cambiar el diseño del reproductor de video en Silverlight que se genera desde Expression Encoder?
R: Al generar el proyecto en Expression Encoder, hay un archivo de proyecto con extensión .csproj. Ese archivo puede abrirse con Expression Blend 2 y desde ahí cambiar el diseño del mismo. Incluso es posible crear plantillas desde Expression Blend y colocarlas en Expression Encoder (hay un tutorial completo en la ayuda de Expression Encoder).
P: ¿Cómo puedo agregar más funcionalidades al reproductor de video o conectarlo con otras aplicaciones?
R: El mismo archivo .csproj puede abrirse en Visual Studio 2008 (puedes usar también la versión de VS Express para C# que es gratuita) para agregar funcionalidades basadas en programación (JavaScript para Silverlight 1.0). Si sabes programar puedes hacer prácticamente cualquier cosa que puedas imaginarte.
P: ¿Puedo agregar subtítulos a un video desde Expression Encoder?
R: ¡Claro! Utilizando archivos externos .xml, .sami, .smi, o .dxfp se pueden agregar subtítulos y otras funcionalidades sin tener que hacer render del video cada vez.
P: ¿Qué pasa si tengo una biblioteca enorme de videos que deseo codificar, debo hacerlos a mano uno por uno?
R: Expression Encoder tiene la capacidad de trabajar desde línea de comando, de forma que sólo es necesario crear el perfil de tu video una vez y lo dejas trabajando de manera automática y desantendida para que aplique esa configuración a un grupo de videos, sin importar que tan grande sea (¡pero revisa que tengas espacio en disco antes!).
P: Ok, ya tengo mi caja de Expression Studio y descargué Expression Encoder pero expiró mi versión de prueba. ¿Cómo la activo?
R: Expression Encoder se activa de manera completa utilizando el mismo código que se usa para Expression Media (PC o Mac, es lo mismo, aunque Expression Encoder sólo existe en este momento para PC)
P: Para videos grabados está muy bien, pero ¿se puede transmitir video en vivo?
R: Por supuesto. El proceso es muy similar, ya que se hace desde Expression Encoder también y se puede hacer broadcasting de audio y video no sólo a Silverlight sino también a una aplicación WPF o a un reproductor como Windows Media, Winamp, Quicktime, Real ONE o cualquier otro, pero esa es una serie que escribiré después.
Visual Studio "code snippets"
Los “code snippets” (fragmentos de código) de Visual Studio son una característica muy útil orientada a aumentar la productividad al escribir código. Básicamente lo que hacen es generar automáticamente el “cascaron” o estructura básica de código para bloques de código comunes, como por ejemplo un ciclo “for”, un “if” o un bloque “try catch” y más.
La forma de uso es muy sencilla, por ejemplo, en el caso de un “if”, tecleamos la palabra clave “if” y oprimimos 2 veces la tecla “TAB”. Visual Studio genera automáticamente el bloque y se posiciona dentro del paréntesis (en C#) marcando un rectángulo resaltando el lugar para escribir inmediatamente la condición:
… una vez escrita la condición, basta con teclear “ENTER” y Visual Studio posiciona el cursor en la primera línea dentro del bloque “if”.
Para un bloque “try catch” la lógica es similar. Tecleamos “try” y después 2 veces la tecla “TAB”:
… en este caso, el rectángulo se posiciona en el lugar para teclear el tipo de exepción, igualmente, después de escribir el tipo de exepción, basta con teclear “ENTER” para escribir el código correspondiente.
En Visual Studio 2008, tenemos nuevos “code snippets”, como por ejemplo el de la estructura “switch”, que es especialmente poderoso al combinarlo con un Enumerador. Supongamos que tenemos un enumerador con los días de la semana:
-
private enum DiaDeLaSemana
-
{
-
Lunes, Martes, Miercoles, Jueves, Viernes, Sabado, Domingo
-
}
Después, en algún lugar donde necesitemos utilizar un "switch", tecleamos la palabra clave "switch" y oprimimos 2 veces la tecla "TAB":
Ahora, especificamos la variable del tipo de nuestro enumerador:
y después teclemos “ENTER”:
Listo, Visual Studio 2008 genera todos los casos posibles en base al enumerador.
Además, es posible también crear tus propios snippets, o inclusive descargarlos. En el caso de Visual Studio 2005 existe inclusive una colección orientada a una gran diversidad de tareas, como colecciones y arreglos, conectividad, base de datos, math, etc, etc.
Para Visual Studio 2008 existe también un editor de snippets que se puede descargar de:
http://msdn2.microsoft.com/en-us/vbasic/bb973770.aspx
Más información:
Consultando los objetos modificados recientemente en SQL Server 2005
Saber en SQL Server 2005 cuales han sido las tablas, stored procedures , funciones, etc. que han sido modificados recientemente no es tan sencillo como se podría pensar, ya que la GUI no provee una forma saberlo. Sin embargo, ejecutando este query en la base de datos correspondiente es posible saberlo:
-
SELECT name, create_date, modify_date
-
FROM sys.objects
-
WHERE type = 'P'
-
ORDER BY modify_date DESC
El campo “type” es donde se determina si queremos tablas, stored procedures (como en el caso anterior), etc.
El mejor auto-retrato del mundo
Esta es la foto tomada a sí mismo del ingeniero de vuelo de la NASA Clayton C. Anderson durante una caminata espacial el 15 de agosto del 2007 en la Estación Espacial Internacional. Sin palabras!!!
Wordpress.com 3GB de almacenamiento gratis!!
![]()
Matt Mullenweg anuncia en su blog sobre esta nueva capacdad de almacenamiento para los usuarios del servicio gratuito de wordpress.com.!! y todo gracias a los servicios de almacenamiento de la plataforma S3 (Simple Storage Service) de Amazon. Viva la “cloud computing”!!