jueves, 4 de diciembre de 2008

Personalizar la apariencia del Visual Studio

Normalmente no me preocupo mucho del cómo se temave mi Visual Studio pero un cambio de vez en cuando no viene mal, en esta ocasión aprobeché de cambiarle un poco la apariencia y quedó bastante bien.

La idea es simple, visitamos el sitio de Scott Hanselman (aqui) y veremos que hay varios temas que él propone para probar, seleccionamos uno y lo descargamos (son livianos, alrededor de 50-100Kb).

Lo descomprimimos y luego abrimos nuestro Visual Studio, una vez abierto seleccionamos la opción Tools y luego Import and Export settings… y luego veremos esta pantalla:

image

Le damos a Next y veremos esta pantalla donde podremos respaldar nuestros seteos actuales antes de importar los nuevos:

image

Le damos a Next y llegaremos a esta pantalla donde podremos seleccionar los nuevos seteos:

image

Le damos a Browse y buscamos los seteos que habíamos descargado y descomprimido (el archivo con extensión .vssettings).

image

Le damos a Next y llegaremos a una pantalla donde podremos elegir si queremos importar todos los nuevos seteos o sólo algunos.

image

Cuando estemos listos le damos a Finish y listo, puede que el wizard detecte algunos errores ya que algunos seteos vienen con elementos predefinidos que puede que no tengamos en nuestro sistema pero no nos afectará.

Finalmente abrimos o creamos algún proyecto y listo ya tenemos los nuevos seteos funcionando en nuestro Visual Studio, si queremos cambiar la apariencia repetimos el proceso hasta encontrar alguna que nos acomode.

Saludos.

lunes, 24 de noviembre de 2008

Estudiando para el examen 70-431

Así es, la semana pasada comencé a estudiar para el examen sobre  Sql 2005 70-431 (SQL Server 2005 Implementation and Maintenance).

Hasta el momento se ve interesante, bastánte práctico y con unos cuantos tecnicismos aunque de seguro irá cambiando en la medida que avance, son 21 capítulos divididos en 838 páginas (en inglés) y el examen se divide en 6 áreas principales.

Se siente un poco raro intentar sacar una certificación alejada de todo lo que es el tema del desarrollo (en realidad la certificación está más bien orientada a los DBA) pero creo que me servirá para reforzar los conocimientos que tengo actualmente de SQL y resolver unas cuantas dudas que he ido arrastrando hasta el momento.

Espero estar dando el examen de aquí a fines de Diciembre (si, no es el mejor momento dadas las fiestas de fin de año) si es que todo sale bien.

Ahora, ¿porqué sacar la certificación de Sql 2005 y no la de 2008? pues porque el libro me había llegado hace un tiempo y sería un desperdicio no ocuparlo, además que una certificación de SQL nunca viene mal y creo que ésta tendrá una vigencia de algunos buenos años todavía.

En general el próximo año pienso empezar a sacar las certificaciones relacionadas con el Framework 3.5 y Visual Studio 2008 (como la de WPF), pero por ahora terminaré con ésta de SQL 2005 para ver que tan difícil es.

Ah y también trataré de mantener más actualizado el Blog ya que lo tengo bastante botado en general por falta de ánimo y exceso de sueño :)

lunes, 6 de octubre de 2008

De todo un poco

Hace ya más de 1 mes que no posteaba, mucho tiempo creo yo pero ya es suficiente como para retomar algunas cosillas.

Como resumen de éste tiempo he estado descansando, pasando las fiestas patrias tranquilamente con la familia y todo eso, estudiando un poco por aquí y por allá y probando algunas cosillas nuevas.

Primero que nada estuve leyendo el libro de Patrones de Diseño del GOF (Ganf of Four), me falta terminarlo todavía pero vamos bien. También le tuve que comprar de mi bolsillo más memoria para el Pc de la oficina ya que llevamos casi 1 año esperando que nos pongan memorias y las respuestas son casi siempre las mismas (vienen en camino, desde china y a pie parece) y con ésto ya le pude instalar el Visual Studio 2008 y he estado mirando algunas cosas como SilverLight y Robotics.

Me falta mirar todavía lo del MVC, LinQ, expresiones Lambda, Dynamics, JQuery, etc. pero pronto estaré metiendo las manos en todo ello.

Por otro lado ya mandé a pedir el libro para la siguiente certificación y  en este caso será la 70-431 (TS: Microsoft SQL Server 2005 – Implementation and Maintenance), decidí avanzar con la de Sql para reforzar mis conocimientos sobre su administración, en este caso trataré de sacarla lo antes posible (ojalá dentro de 1 mes) y posteriormente tengo ganas de sacar alguna de windows presentation foundation (WPF). El libro me debería llegar posiblemente ésta semana por lo que pronto estaré publicando más noticias al respecto.

Eso sería por ahora, saludos.

miércoles, 27 de agosto de 2008

Cursos Online de la MSDN

Hola, en esta ocasión vengo a comentarles que la MSDN está ofreciendo cursos en línea mediante presentaciones y videos sobre varios temas como SilverLight, introducción a C#, SQL Server 2005, SharePoint, SmartClients, etc.

Todo obviamente gratis y en español:

http://www.microsoft.com/spanish/msdn/spain/cursosonline.mspx

Que los disfruten, saludos !

jueves, 21 de agosto de 2008

Ya soy MCPD

No había escrito nada estos últimos días porque estaba calladito repasando para el examen del MCPD (Web) y haciendo hartas pruebas.

En un principio tenía pensado dar el examen éste viernes 22 pero no habían horas disponibles en la mañana así que decidí adelantarlo para hoy jueves y afortunadamente salió todo bien.

Como resumen muy corto del libro puedo comentar que me cambió la perspectiva de lo que tenía visto hasta ahora. Ya no son sólo conceptos técnicos y cómo usarlos, esto es un proceso de desarrollo completo desde la recepción de los requerimientos, su análisis, evaluación, documentación, selección y evaluación de alternativas para cumplir con los requerimientos, puesta en marcha del proceso de desarrollo, implantación e instalación y posterior soporte y mantenimiento de la aplicación.

Respecto al examen en sí éste consta de 40 preguntas y te dan 2 horas y media para completarlo, como siempre el tiempo es holgado pero las preguntas en ésta ocación fueron más orientadas a si las soluciones propuestas satisfacían los requerimientos indicados, también un poco de seguridad y acceso a datos.

¿Que se viene ahora? Pues yo creo que al menos una semana de descanso y de ahi ver con que sigo, en uno de mis posts anteriores planteé varias cosas que tengo pendientes por estudiar, es muy probable que las empieze a revisar ya con más calma o tal vez me dedique a sacar otra certificación entre las cuales podría ser la 70-529 (aplicaciones distribuidas) o la 70-526 (aplicaciones windows), también tengo pendiente sacar alguna de Sql Server 2005 ojalá, bueh el tiempo dirá por ahora sólo quiero descansar un poco.

Ahora puedo usar éste logo:

20061107_MCPD

Cualquier duda me comentan, saludos !

martes, 12 de agosto de 2008

Microsoft en las olimpíadas

Sólo unos pocos se habían dado cuenta de la prescencia de Microsoft en las olimpíadas pero como siempre hay gente con mucho tiempo libre para dedicarse a revisar hasta los más mínimos detalles de eventos como este.

Y como siempre nuestra querida amiga BSOD no quiso quedarse afuera de tan magno evento y realizó una visita fugaz a la inauguración de los juegos olímpicos (click en las fotos para agrandar):

BSOD

BSOD

BSOD

viernes, 8 de agosto de 2008

Compresión de contenidos vía Deflate o Gzip

Hola, en esta ocasión explicaré un poco este tema de cómo comprimir los contenidos generados por nuestras páginas.

El objetivo a lograr es reducir el peso del contenido HTML generado por nuestras páginas, de ésta forma se pretende aumentar la performance de nuestra aplicación al reducir los tiempos de espera usados para que se dibuje la página en el cliente y el transporte del contenido entre el cliente y el servidor sean menores.

Un beneficio directo de esta técnica es alivianar la carga existente para la red de la empresa si nuestra aplicación funciona sobre una intranet y en caso contrario (internet) mejorar el tiempo de descarga del contenido para los clientes. Otro beneficio indirecto es que se aprovecha la capacidad de los clientes al usar la descompresión automática de contenidos soportada por la mayoría de los clientes (browsers) actuales.

Desde la versión de IIS 6 en adelante es posible habilitar la compresión automática de contenidos, para habilitarla sobre el IIS 6 podemos ver el siguiente ejemplo en inglés:

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/502ef631-3695-4616-b268-cbe7cf1351ce.mspx?mfr=true

Y también tenemos éste ejemplo en español:

http://www.mygnet.net/articulos/iis/comprimir_archivos_http_en_iis_6_dot_0.271

El problema viene cuando nuestro ambiente de producción no tiene habilitada la compresión automática de contenidos, esto puede pasar por diferentes razones como por ejemplo que en la misma máquina estén funcionando otras aplicaciones además de la nuestra y las otras aplicaciones no sean compatibles con ésta compresión de contenidos o también puede pasar que simplemente no tengamos acceso a las máquinas de producción.

Para revisar si nuestra aplicación en ambiente producción (suponiendo que es visible desde internet) tiene habilitada la compresión automática de contenidos podemos usar la siguiente aplicación donde pondremos la dirección de nuestra aplicación:

http://www.aspnetresources.com/tools/httpcompression.aspx

Si el resultado del análisis nos entrega lo siguiente:

Content type: UTF-8
Page size: 46,775 bytes
Served uncompressed

Significa que no está habilitada la compresión automática de contenidos por lo tanto podríamos intentar usar la compresión manual.

Para implementar la compresión manual de contenidos en ciertas páginas podemos hacer lo siguiente, primero crearemos un método que nos indicará si el cliente soporta la compresión, primero probaremos con el método deflate y luego con gzip, básicamente porque el método deflate se comporta mejor que gzip en cuanto a tiempo de respuesta:

/// <summary>
/// Determines if GZip is supported
/// </summary>
/// <returns></returns>
protected static bool IsGZipSupported()
{
    string AcceptEncoding = HttpContext.Current.Request.Headers["Accept-Encoding"];
    if (!string.IsNullOrEmpty(AcceptEncoding) &&
 (AcceptEncoding.Contains("deflate") || AcceptEncoding.Contains("gzip")))
return true;
    return false;
}

Como ya tenemos el método que nos indicará si la compresión es soportada a continuación creamos el método que usaremos para realizar la compresión propiamente tal:


/// <summary>
/// Sets up the current page or handler to use GZip through a Response.Filter
/// IMPORTANT: 
/// You have to call this method before any output is generated!
/// </summary>
protected static void GZipEncodePage()
{
    if (IsGZipSupported())
    {
        HttpResponse Response = HttpContext.Current.Response;
 
        string AcceptEncoding = HttpContext.Current.Request.Headers["Accept-Encoding"];
        if (AcceptEncoding.Contains("deflate"))
        {
            Response.Filter = new System.IO.Compression.DeflateStream(Response.Filter,
                                      System.IO.Compression.CompressionMode.Compress);
            Response.AppendHeader("Content-Encoding", "deflate");
        }
        else
        {
            Response.Filter = new System.IO.Compression.GZipStream(Response.Filter,
                                      System.IO.Compression.CompressionMode.Compress);
            Response.AppendHeader("Content-Encoding", "gzip");
        }
    }
}

Lo ideal es tener este par de métodos en alguna clase base o de utilitarios de manera que podamos invocarlos de la forma más fácil que podamos, en éste caso ambos métodos los puse en una clase base y como son estáticos basta con llamar al método que realiza la compresión en el Page_Load de la página donde lo vamos a usar:


protected void Page_Load(object sender, EventArgs e)
{
    GZipEncodePage();
if (!IsPostBack)
    {

Como restricción para usar esta técnica es que debemos usar la llamada al método de compresión (en nuestro caso GZipEncodePage) en la primera línea del método Page_Load de la página donde lo usemos.

Una buena razón para usar la compresión manual es que podremos realizar una compresión selectiva de las páginas a las que queremos aplicarles compresión.

Debemos considerar que el uso de compresión crea un consumo extra de tiempo de CPU a la hora de usar ésta técnica aunque es mínimo y realizado por el cliente si es que lo soporta, por lo tanto lo ideal es implementar la compresión en aquellas páginas que consideremos como buenas candidatas para ésta técnica, un buen ejemplo son aquellas páginas que generan mucho contenido HTML.

Para ejemplificar mejor lo que podremos conseguir con ésta técnica podemos ver a continuación una página de ejemplo sin la compresión habilitada:

Prueba_Gzip-antes-mini

Como podemos ver el contenido HTML de la página es de 54.6K con un tiempo de respuesta de 12.04s.

Ahora veremos los resultados de la misma página pero con la compresión habilitada:

Prueba_Gzip-despues-mini

Como podemos ver pasamos de 54.6K a 13.2K de contenido HTML con un considerable ahorro de datos transportados entre el cliente y el servidor y aún mejor el tiempo de respuesta que bajó de 12.04s a 5.917s, si imaginamos resultados similares con muchos clientes concurrentes podemos hacernos una idea de las mejoras que podremos obtener con nuestra aplicación.

Como mencioné anteriormente si ésta técnica es bien usada donde corresponde puede ayudar a alivianar un poco la carga de datos entre el cliente y el servidor pero no debe ser interpretada como una fórmula mágica.

Como referencia usé este artículo de Rick Strahl (MVP):

http://www.west-wind.com/weblog/posts/10564.aspx

Ojalá les sirva, saludos.


Pd.: Sorry por el código si se ve mal formateado.

lunes, 4 de agosto de 2008

Cursos sobre el FW .Net 2.0 y SQL 2005 gratuitos para estudiantes

Para los que sean estudiantes y estén pensando sacar alguna certificación relacionada con el FrameWork 2.0 de .Net y/o con SQL Server 2005 les comento que Microsoft con su programa Student Partners está ofreciendo una serie de cursos y workshops gratuitos.

Los cursos están orientados a los siguientes 5 ámbitos:

  • Windows Developer
  • Web Developer
  • Database Developer
  • Windows Server IT Professional
  • Windows Client IT Professional

Se ven bastante buenos especialmente los workshops sobre web ya que según la lista me parecen muy similares a lo que tuve que estudiar para el examen 70-528.

Link: Microsoft Student Partners – LATAM

Fuente de la noticia: Blog de Jesús Gonzales

jueves, 31 de julio de 2008

¿Alcanza el tiempo para estudiar todo?

Esta es la pregunta que me vengo haciendo hace tiempo casi todos los días.

Mientras me preparo para sacar mi siguiente certificación (que por cierto va bastante bien: capítulo 8 de 17 y hasta el momento sigo encantado con el libro) siempre voy leyendo otras cosillas en mis tiempos de compilación y en mis ratos libres en la casa y por lo general voy juntando materiales con cosas que más adelante intentaré leer con más calma (videos, presentaciones, textos, blogs, libros en pdf o chm, etc.).

Normalmente cada cierto tiempo m¿Que estudiar?e voy dando cuenta que la carpeta de documentos y videos guardados sigue y sigue creciendo sin parar mientras trato de darle una pincelada a cada cosa que pillo por ahi para no quedar tan perdido si alguien me pregunta sobre un tema o tecnología específica y finalmente me termino sintiendo un poco agobiado al darme cuenta que mientras más trato de aprender más cosas me van faltando o voy dejando pendientes.

Es complicado el tema de tratar de distribuir el tiempo libre si tienes una familia y un trabajo que no puedes dejar de lado cuando se te dé la gana, menos aún cuando nadie más que tu mismo eres el que te motiva a estudiar.

Bueno, para no desviarme tanto del tema en cuestión quiero hacer una lista de temas que me gustaría leer y profundizar más apenas termine con mi actual certificación (o entremedio si se puede), para hacerlo más fácil separaré la lista en temas con prioridad y otros no tan urgentes según mi criterio:

Temas prioritarios

  • Framework 3.0 y 3.5
  • Terminar algunos materiales que dejé a medias sobre patrones de diseño, metodologías de desarrollo, estimaciones de tiempo y cosas sobre arquitectura de aplicaciones
  • Posiblemente sacar las certificaciones 70-526 y 70-529
  • También me gustaría tratar de sacar alguna certificación sobre SQL 2005
  • WPF (windows presentation foundation), WCF (windows communication foundation), WWF (windows workflow foundation), Linq, SilverLight
  • MVC (model view controller)

Temas no tan prioritarios pero interesantes

  • Mono (.Net para Linux)
  • jQuery, JSon, últimas versiones de Ajax
  • IronPython, IronRuby, Java, además de cómo montar apache sobre Ubuntu con Postgre o MySql
  • Microsoft Dynamics (incluyendo mobile y AX)
  • NHibernate y otros ORM’s
  • Test Units y mejoras al proceso de pruebas
  • Microsoft Robotics
  • Entity Framework
  • Sharepoint, Biztalk
  • Virtualización de máquinas
  • XNA

Creo que es una buena lista, sacando cuentas el abanico de posibilidades es enorme y con mucho potencial, muchas mezclas tal vez entre tecnologías y metodologías pero allí están las cosas que me andan dando vuelta en la cabeza normalmente mientras se van llenando mis discos duros con información a la que tal vez ni siquiera valga la pena dedicarle tiempo, sin duda en alguna de ellas estaré metido en los próximos meses.

Y a ti, ¿te alcanza el tiempo?

Saludos.

viernes, 25 de julio de 2008

Windows Live SkyDrive

Si, ya se que es medio antiguo a estas alturas, pero recién hoy lo vine a probar y me gustó bastante.

SkyDrive es a modo resumido un espacio personalizado para subir tus documentos, fotos, videos, pornografía, etc., cuenta con un espacio de 5Gb completamente gratuitos y la gracia es que integra automáticamente con tu cuenta de Windows Live, de ésta forma te evitas tener que estar registrándote y todo eso.

La otra ventaja es que por defecto viene pre-personalizado con 3 tipos de carpetas las cuales se dividen en carpetas personales donde sólo tu tienes acceso, las carpetas compartidas donde puedes compartir archivos con quienes tu quieras y las carpetas públicas donde cualquier persona puede ver su contenido.

Click para agrandar

Ojalá les sirva, saludos !

miércoles, 23 de julio de 2008

Registra tu dominio gratis por 1 año

Esto es un poco off-topic pero creo que es una buena oportunidad para quienes quieran registrar su dominio completamente gratis por 1 año.

El registro es un poco complicado pero funciona:

http://indycarrewards.com/


Ahora pueden ver mi blog directamente en:
http://www.darkspy1976.com/

Edit: Ya no funciona, parece que sólo era una estrategia comercial :(

lunes, 21 de julio de 2008

MCPD: Aqui vamos

Como no hay plazo que no se cumpla ya pasó mi semana de vago vacaciones sin lecturas de peso, y hoy he comenzado oficialmente a leer el libro para el MCPD, bueno reconozco que lo estuve mirando un poco el fin de semana y ya voy en el capítulo 2.

¿Como se ve el libro? Pues sinceramente me ha gustado demasiado lo visto hasta ahora, ya no se tiene la perspectiva orientada a conceptos técnicos, ahora se empieza a mirar todo desde una perspectiva de más alto nivel y orientada al que, cómo y cuando usar lo aprendido anteriormente.

Esta perspectiva diría yo está más bien orientada a una especie de pre-arquitecto de software, donde empiezas a ver temas como evaluar requerimientos, diferencias entre requerimiento y caso de uso, creación de prototipos o maquetas (mockups), creación de ORM (Object Role Modeling), etc.

El libro como mencioné en posts anteriores tiene 673 páginas de las cuales 586 son de lectura las cuales dividen en 17 capítulos (bastantes) y el resto son de respuestas, glosario, índice, etc.

Espero tener finalizada la lectura del libro para fines de Agosto y como siempre dejar 1 o 2 semanas de repaso/pruebas y de ahi a dar el examen y ojalá pasarlo a la primera como ha sido hasta ahora con las anteriores.

Un detalle que me ha llamado la atención del libro es que la letra es más chica respecto a los otros dos que me había leído anteriormente, y como el contenido de las lecturas ahora es bastante más denso he notado que me demoro más que antes en avanzar con la lectura, diría que me pasa algo similar a lo que me pasó con el primer libro donde en algunas lecciones decía Tiempo Estimado de lectura: 20 minutos y a veces me demoraba una hora, bueno de seguro es tiempo Microsoft como cuando instalas una aplicación y dice “Tiempo Estimado: 2 minutos” y al final esos 2 minutos pueden ser 2 segundos o 2 horas.

En la medida que avance con el libro trataré de ir comentando que tal es, pero se ve muy interesante.

En fin, a seguir estudiando se ha dicho, saludos !

viernes, 18 de julio de 2008

Usando la lista de tareas

No todos lo saben, pero Visual Studio (al menos el 2005 no se si el 2008) nos puede ayudar a ir anotando las tareas que tenemos pendientes en el código, una tarea común es ir anotando entremedio del código las cosas pendientes de la forma:


   1:  private void FillDataInfo()
   2:  {
   3:      this.label1.Text = "Nombre"; //TODO: Traducir
   4:      //TODO: Definir resto del método            
   5:  }

La gracia es que estos comentarios si comienzan con la palabra TODO (por hacer en inglés) serán reconocidos por Visual Studio como tareas pendientes y los irá agregando a la lista de tareas.

Para acceder a la lista de tareas vamos a View –> Task List en el menú de Visual Studio y luego seleccionamos la opción Comments en el combo y veremos que irán apareciendo los comentarios que hayamos dejado en nuestra aplicación, además del archivo donde lo escribimos y el número de línea.

taskview

Ojalá les sirva, saludos.

jueves, 17 de julio de 2008

Activando el Word Wrap en Visual Studio 2005

Una de las reglas primordiales del Refactoring es la correcta escritura de nuestro código de manera tal que si alguien que nunca ha tocado uno de nuestros fuentes le toca modificarlo o editarlo pueda entenderlo de una manera clara y que ojalá no le quepan dudas sobre qué es lo que realmente hace el código que hemos escrito.

Lamentablemente y ya más por un tema técnico (por ejemplo tenemos que trabajar con monitores de 14” que no soportan más de 800x600) muchas veces nos toca ver que nuestro código se empieza a ver así:

wrap1

Lo correcto en éste caso sería simplemente ponerle saltos de línea para que podamos ver todo el código con una primera mirada sin tener que estarnos moviendo hacia el lado:

wrap2

Pero ya si empezamos a mirar por ejemplo el código HTML de una página que estamos desarrollando nos pasa que al usar la vista de diseño y arrastrar controles desde la Toolbar se nos empieza a desarmar el código y empezamos a ver todo corrido:

wrap3

En este punto tenemos 2 opciones, una es hacer lo mismo que mencioné antes sobre el salto de línea a todo el HTML en forma manual o simplemente activar el Word Wrapping de Visual Studio (2005, no se si funcionará también en 2008) y olvidarnos en parte del problema (esto depende del nivel de normativa que tengas en tu trabajo sobre la escritura de código).

En realidad éste es sólo un pequeño detalle pero nos puede ahorrar bastante tiempo a la hora de leer código con una refactorización pobre o simplemente casos como el del HTML que mencioné anteriormente.

Para activar el Word Wrapping simplemente vamos a Tools ---> Options (Herramientas ---> Opciones) y luego vamos a la sección Text Editor ---> All Languages (Editor de Texto ---> Todos los lenguajes) y activamos la opción Word Wrap (Ajuste de línea).

wrap4

También recomiendo activar la sub-opción Show visual glyphs for word wrap (Mostrar glifos visuales para ajuste de línea) con la que se nos desplegará una pequeña flecha al final de cada línea que tenga un salto forzado, de ésta forma veremos todo el código de una forma uniforme y no tendremos que estar moviéndonos hacia el lado para ver que dice el resto del código que no alcanzó a mostrarse en pantalla.

wrap5

Ojo que igual debemos seguir poniendo los saltos de línea a mano donde corresponda ya que no todos tendrán el Word Wrapping activado.

Ojalá les sirva, al menos yo lo uso así desde hace algún tiempo y me ha gustado bastante.

Saludos.

lunes, 14 de julio de 2008

¿MCPD antes de lo planeado?

Después de un cortísimo fin de semana en la playa, pensaba 70-547 dedicarme a descansar una o dos semanas antes de seguir con el estudio para el MCPD (Microsoft Certified Professional Developer) y leer una de las tantas miles de cosas que he ido dejando para después, pero ayer apenas llegué me fueron a dejar el libro que había pedido hace un par de semanas sobre diseño y desarrollo de aplicaciones web.

Ahora que tengo el libro en mis manos estoy en la disyuntiva si dedicarme inmediatamente a leerlo y terminarlo lo antes posible o darme unos días para relajarme un poco y ver otras cosas o simplemente descansar.

Mientras decido que hacer (aunque yo creo que me daré unos 2-5 días libres para leer otras cosas) quiero comenzar a planificar esta certificación.

Después de una primera mirada puedo comentar que el libro me gustó bastante ya que contiene varios temas de arquitectura y temas sobre el como, cuando y qué hacer a la hora de desarrollar una aplicación web.

También me fijé contiene muy poco código comparado con las otras dos lecturas que me han tocado antes lo cual me parece bueno, pero también se puede hacer más largo aunque tiene bastante menos páginas también comparado con los anteriores (673 páginas) aunque está más separado (17 capítulos).

Mis planes para ésta certificación son sacarla lo antes posible, ojalá que salga mucho más rápida que las 2 anteriores, estando a 14 de Julio y suponiendo una semana de descanso me gustaría planificarme para estar dando el examen a mediados o fines de Agosto o a más tardar a principios de Septiembre y de ahi ver con qué sigo, el camino se ve prometedor.

¿Porqué tanto apuro? Pues porque quiero dar luego el salto al framework 3-3.5 (si, estoy atrasado ya) y ahi las certificaciones se abren bastante (WPF, WCF, Ado.Net, etc.).

Saludos.

viernes, 11 de julio de 2008

Ya soy MCTS !

Así es, no había posteado nada nuevo porque estaba calladito estudiando para el examen 70-528.

Tenía pensado darlo el viernes pasado pero por falta de tiempo para estudiar decidí postergarlo una semana y este miercoles decidí pedir la hora para esta mañana asi que fuí y lo di sin problemas.

El test consta de 45 preguntas y dan alrededor de 2 horas y media para contestarlas.

Las preguntas fueron bastante variadas aunque esperaba más preguntas conceptuales como en el 70-536, aquí casi todas fueron más bien “prácticas” o sea de conceptos aplicados a un tema en particular, me tocaron varias preguntas que apuntaban a como diferenciar el uso del “copy web tool” y el “publish web tool”, unas de manejo de documentos y nodos Xml, uso de webparts, seguridad (forms), manejo de datasets, diferencias entre compositecontrol y usercontrol y el uso del compositecontrol (dll), etc.

El tiempo como siempre es más del que realmente se necesita pero se agradece que den suficiente tiempo para no estar contestando apurado.

Sólo me queda recomendarles que se lean el libro y hagan todos los laboratorios que vienen ya que el examen apunta más a ese tipo de experiencia.

En mi caso afortunadamente le achunté a casi todas las preguntas excepto creo que a una sobre autenticación que no estaba muy seguro (en realidad marqué como 10 para revisión al final del examen y corregí unas 3 o 4) pero lo pasé con 982/1000 (nada mal).

Ahora si puedo usar el siguiente logo:

mcts

¿Cual es el siguiente paso? Pues bien, ya mandé a pedir el libro del 70-547 (PRO: Designing and Developing Web-Based Applications by Using the Microsoft .NET Framework) para sacar el MCPD de Web Developer. El libro me debería estar llegando en 1 o 2 semanas más y por lo que vi es algo más corto que los otros 2 que he leido por lo tanto creo que a fines de agosto o principios de septiembre podría estar dando el examen para el MCPD, ojalá así sea :)

Ahora a relajarme y carretear hasta quedar muerto celebrar como corresponde, saludos !

martes, 1 de julio de 2008

SlickRun: Adiós a los accesos directos

Desde hace un par de semanas estoy usando esta pequeña aplicación de Bayden Systems que es bastante simple y liviana y gratuita y sirve principalmente como línea de comandos flotante donde puedes crear tus propios comandos para acceder a tus aplicaciones favoritas o crear macros o scripts.

De ésta forma con escribir un par de letras puedes levantar cualquiera de las aplicaciones que tienes instaladas en tu Pc de forma muy fácil y directa.

La forma de uso es la siguiente:

Primero bajas el programita (que pesa sólo 175Kb) de aqui (posiblemente te pida instalar alguna librería de Delphi o algo así). Una vez bajado e instalado y obviamente ejecutado te aparecerá algo así como una pequeña barra de comandos con lsr1a fecha y hora actual la cual puedes arrastrar donde mejor te parezca.

Luego para ir agregando comandos presionas con el botón derecho sobre la barrita y seleccionas “New MagicWord” y te aparecerá una interface donde pones el comando que quieres crear, por ejemplo crearemos uno para llamar al Paint y le pondremos “pa”.

A continuación tenemos 2 opciones, o digitamos directamente en el cuadro que dice “Filename or URL” la ruta de la aplicación o acceso directo que queremos invocar o simplemente levantamos la sr2aplicación  como lo haríamos normalmente y luego arrastramos el puntero verde que está a la derecha del cuadro que dice “Filename or URL” y apuntamos a la aplicación que está corriendo lo cual automáticamente nos dará la ruta de la aplicación en el cuadro.

Listo eso es todo ahora cuando queramos levantar el Paint sr3simplemente hacemos click en la barra flotante y escribimos “pasin comillas y presionamos enter.

Ojalá les sirva, saludos.

viernes, 27 de junio de 2008

Cambio de estrategia (70-528)

Bueno, el lunes después de postear lo que sería un intento de un primer resumen de preparación del examen 70-528 me estuve  cuestionando si sería necesario realmente hacer un resumen o si bastaría con hacer los laboratorios que vienen con el libro además de empezar directamente con las pruebas.

La noche del miercoles empezé con un par de pequeños sets de preguntas de prueba, uno con 15 preguntas de las que venían con el CD del libro y otras 15 preguntas de un transcender que ya tengo a mano, en el primer set (que normalmente considero como las preguntas “fáciles”) conseguí un 87% y en el segundo (más complicadas) logré un 80%.

Como muestreo creo que me deja claro que a simple vista el nivel de profundidad de las preguntas para éste examen es bastante menos exigente que las preguntas para el examen 70-536 y como afortunadamente ya tengo creo yo una buena experiencia con el desarrollo de aplicaciones web con Asp.Net no me debería complicar mucho por lo tanto he decidido cambiar mi estrategia de estudio para el examen 70-528 y me concentraré sólo en practicar con las preguntas del CD más las que tengo con el Transcender y siempre con la ayuda de mi amiga la librería MSDN a mano.

De esta forma me saltaré el resumen y un repaso más profundo para agilizar el proceso de dar el examen y como fecha propuesta tengo pensado darlo el próximo viernes 4 de Julio. Si, es sólo una semana de repaso en base a preguntas y MSDN pero creo que será suficiente para conseguir superar el examen, tengo hasta el día miercoles de la próxima semana para pedir la hora y para ese día espero ya tener más claro si tengo la confianza necesaria para hacerlo, si no lo dejaré para un poco más adelante dependiendo como me sienta total nadie me apura.

A estudiar se ha dicho entonces, saludos.

jueves, 26 de junio de 2008

Evernote: Un buen lugar donde dejar tus notas y textos varios

Navegando por ahi me encontré este buen sitio para ir dejando tus  notas o anotaciones y después poder verlas en tu casa, trabajo o cualquier lugar.

La gracia es que también permite pegar trozos completos de páginas o tu lista de favoritos para tenerlos siempre a mano independiente de donde estés.

Tiene un espacio mensual de 40Mb (creo que es suficiente para dejar una buena cantidad de notas y textos) y obviamente es gratis, lo recomiendo:

Evernote

Pd.: Por cierto esta es mi primera publicación con Windows Live Writer, se ve bien hasta ahora. Ojalá no me deje la mansaka… Para bajarlo click aqui.

martes, 24 de junio de 2008

70-528 Resumen 1/7: Creando y programando una aplicación Web.


Primer repaso de los 7 puntos para el examen 70-528 para sacar la certificación MCTS.
Engloba los capítulos 1, 2, 3, 6, 7, 8 y 10 del libro oficial de Microsoft, la lista de capítulos y lecciones incluídas quedaría más o menos así:
-Capítulo 1 (Introducción a los Web Sites de Asp.Net 2.0): Lecciones 1, 2 y 3.
-Capítulo 2 (Agregando y configurando controles de servidor): Lecciones 1 y 2.
-Capítulo 3 (Explorando controles de servidor especializados): Lecciones 1, 2 y 3.
-Capítulo 6 (Validación de entradas y navegación del sitio): Lecciones 1 y 2.
-Capítulo 7 (Manejo de estados de Asp.Net): Lecciones 1 y 2.
-Capítulo 8 (Programando la aplicación Web): Lecciones 1 y 2.
-Capítulo 10 (Globalización y accesibilidad): Lecciones 1 y 2.
A simple vista podemos darnos cuenta que la estructura del libro en relación al examen es bastante desordenada a diferencia de lo ocurrido con el examen 70-356, pero veamos como sale.

lunes, 9 de junio de 2008

Resumen examen 70-536


Bueno, como lo prometido es deuda escribiré un breve artículo sobre mi estrategia para pasar el examen 70-536 (Microsoft .NET Framework 2.0 Application Development Foundation).

En primer lugar y como base la idea es conseguirse el libro MCTS Self-Paced Training Kit (Exam 70-536): Microsoft .NET Framework 2.0 Application Development Foundation, al menos yo lo mandé a pedir por Amazon (link), pueden bajar por ahi la versión en PDF pero siempre es mejor tener la versión impresa.

Hay que tener claro que el libro es la base del examen pero no cubre todos los tópicos, yo diría que cubre alrededor de un 70-80%, no recomiendo confiarse y basarse sólo en el libro para dar el examen, también hay que considerar que el libro está sólo en inglés y no hay versiones en español por lo tanto conseguir ayuda en español se hace un poco difícil.

Una vez leído el libro (al menos 1 o 2 meses dependiendo de tu velocidad) te harás una idea bastante completa de los tópicos cubiertos por el examen, luego si revisas el temario oficial (link) verás que los puntos que entran en el examen son 7 y se encuentran repartidos en los 16 capítulos del libro por lo cual se hace un poco enredado tratar de ordenar el temario.

Es justamente en éste punto donde entra en juego el resumen publicado por el amigo Valeriano Tórtola, ya que una vez leído el libro comenzarás con el repaso el cual en mi caso fué re-leer el libro con el resumen en mano de forma bastante ligera (pero a conciencia) y reforzando especialmente aquellas áreas que me resultaban más débiles.

La verdad nunca le he agradecido como corresponde a Valeriano por lo valioso que me resultó su resumen (pronto lo haré), mientras tanto les dejo los links, les recomiendo imprimirlos y tenerlos a mano siempre en el repaso, si pueden compren un destacador y marquen los conceptos más importantes a medida que los vayan leyendo:

70-536 Resumen 1/7: Tipos y colecciones
70-536 Resumen 2/7: Entrada/Salida y serialización
70-536 Resumen 3/7: Globalización, gráficos y manipulación de texto
70-536 Resumen 4/7: Threading, dominios de aplicación y servicios Windows
70-536 Resumen 5/7: Interoperabilidad, reflexión y mail
70-536 Resumen 6/7: Seguridad de aplicación, usuario y datos
70-536 Resumen 7/7: Instrumentación e Instalar y Configurar aplicaciones

Posterior al repaso se viene la etapa de pruebas, para ésta etapa recomiendo tener instalada la MSDN en el Pc, la idea es partir con los tests que vienen incluidos en el CD del libro, al principio puede que no sean tan fáciles las preguntas pero en la medida que vayamos profundizando los conceptos iremos mejorando el puntaje, lo divertido es que en los tests que vienen con el CD salen preguntas sobre temas que no vienen incluidos en el libro y para estos casos es fundamental la MSDN.

Al principio tal vez sería bueno partir con sets de 15-20 preguntas para ir viendo como andamos, las preguntas que acertamos no las revisamos pero las que erramos debemos dedicarles atención y consultar inmediatamente la MSDN para tener una idea clara de porqué fallamos.

Cuando alcanzemos entre un 80-100% en las preguntas del CD (que no son difíciles) tenemos la opción de seguir estudiando con la MSDN o conseguir un exam cram o similares como un Transcender (éste último lo recomiendo demasiado, tiene una buena cantidad de preguntas y en las respuestas te explica el porqué una opción es mejor que las otras con referencias a la MSDN y todo eso), la idea dentro de lo posible es conseguir una fuente con más preguntas para seguir mejorando las respuestas, cuando ya estemos seguros y tengamos la suficiente confianza podemos comprar el voucher en el sitio de prometric (link) y solicitar nuestra hora para rendir el examen en el lugar que más nos acomode (cuesta alrededor de USD$ 80).

Si ya tienen las preguntas del CD y las del (por ejemplo) Transcender se darán cuenta que el nivel de dificultad es bastante más alto en el Transcender, una duda que nadie me pudo responder cuando estaba estudiando era la dificultad del examen real, como ejemplo les puedo comentar que alrededor de 20-30% de las preguntas del examen son del nivel de las que vienen en el CD y el resto se acerca más a las preguntas del Transcender por lo tanto cuando estudien háganlo pensando en sacar sobre el 70-80% en el Transcender y con eso ya podrán estar más tranquilos para el examen.

El examen consta de 40 preguntas y dan alrededor de 240 minutos para rendirlo, tiempo más que suficiente, actualmente además Microsoft está dando una segunda oportunidad de rendir el examen en caso de fallar.

Hace un tiempo también los amigos de Devworks iniciaron un curso de preparación online en forma gratuita, podrían ver si todavía aceptan participantes (link).

Espero haberles ayudado (si es que alguien lee este blog todavía), por lo menos ya me lo puedo sacar de la conciencia.

Saludos y si van a dar el examen pues mucha suerte y ánimo !

lunes, 26 de mayo de 2008

Analizador de código para C#


Ya está disponible esta herramienta de análisis de código por parte de Microsoft llamada Microsoft Source Analysis for C#, anteriormente era conocida como StyleCop en Microsoft.
Actualmente existe otra herramienta llamada FxCop pero está basada en análisis de ensamblados a diferencia de Microsoft Source Analysis for C# que se basa en el código fuente própiamente tal.

La herramienta incluye sobre 200 buenas prácticas y cubre muchos aspectos, se integra directamente con Visual Studio 2005 o Visual Studio 2008 y también se puede usar mediante línea de comandos, tal vez lo malo que tiene es que le falta algo de documentación todavía pero va por buen camino.
Para bajar, click aquí.
Para el sitio oficial, click aquí.

Pd.: A ver si ésta noche posteo sobre mi estrategia de estudio que usé para el examen 70-536.

Saludos !

viernes, 23 de mayo de 2008

Curso de SilverLight

No he tenido nada de tiempo para investigar sobre SilverLight, pero con este curso no se a que hora espero poder darle una miradita con más calma:

Click Aqui

Si, es gratis, saludos.

jueves, 22 de mayo de 2008

Nuevos tiempos

Mhhh... esto es algo que hace tiempo quería comentar, la verdad no es muy sencillo de explicar para mi pero quiero desahogarme un poco.
Desde que tengo memoria (si, a veces me siento un poco viejo) he sido "gamer" y siempre he tratado de alargar lo más posible la etapa de inmadurez, eso hasta hace algunos meses (concretamente Febrero), donde comenzé a mirar hacia atrás y me di cuenta de todo el tiempo que había derrochado en juegos y al final no me dejaban nada (excepto muy buenos amigos que hasta el día de hoy conservo), la cosa es que igual le dedicaba todos los días su rato al juego (ya sea en el Pc o la Xbox 360) y entremedio también le tenía que dedicar tiempo al estudio para la certificación y además obviamente tiempo para la familia (ya perdí la cuenta de las veces que mi polola señora me reclamaba que me dejara de jugar y le dedicara más tiempo a ella y al estudio igual tenía razón).
Hasta que empezé a colapsar y el tiempo ya simplemente no me alcanzaba por ningún lado y a mi familia obviamente no la iva a dejar y entre los estudios y los juegos cláramente los estudios eran mi meta, en ese momento hice lo que yo considero el equivalente a un fumador compulsivo que ha fumado casi toda su vida: dejar de fumar de un día para otro, empezé con convulsiones y casi me muero decidí dejar el vicio de raíz, no más juegos enviciantes y quita-vidas como los mmorpg.
No fué fácil pero la necesidad tiene cara de hereje, para alguien que nunca ha sido muy dado a los libros tener que leerse el librito para el examen 70-536 que tiene más de 1000 páginas (todo en inglés) y tener que posteriormente meterse a la MSDN a complementar lo que no se incluye en el libro y además obligarte a estudiar todos los días no fué nada fácil pero tampoco imposible.
Recuerdo que hubo un día domingo en la noche en que tenía unas 2 o 3 horas libres para estudiar, pasada la primera media hora ya no tenía muchas ganas de seguir estudiando, llegando a la primera hora me picaban las manos por jugar, la siguiente media hora estaba incluso nervioso pero fuí fuerte y me obligué a estudiar. Yo creo que en ese minuto se produjo el quiebre entre el estudio y las distracciones, me obligué a estudiar y de ahi en adelante asumí el estudio como parte de mi vida y comenzé a mirar hacia atrás a todo ese tiempo que perdí jugando cuando podría haber estado estudiando, quizás cuantos logros podría tener a estas alturas, pero en fin, norlamente creo que no vale la pena arrepentirse por las cosas hechas si no más por las que no se han hecho, estoy consciente que no tomé las mejores desiciones pero creo que todavía estoy a tiempo de recuperar el "tiempo perdido" y haber logrado mi primera certificación me indica que voy por el camino correcto y que la meta que en un principio se veía tan lejana y ya he superado no es inalcanzable, menos para cualquiera que sea más dedicado a los estudios y libros de lo que yo he sido.
La moraleja de la historia segun yo es que si alguien como yo pudo sacar la certificación creo que cualquiera puede hacerlo con un poco de empeño y mucho esfuerzo, es cosa de ser constante no más (bueno y saber algo de inglés en este caso), en mi caso fué algo más complicado por todos los factores que he mencionado (además de tener a mi hija que hace poco cumplió 1 año y todavía no dejar dormir mucho que digamos).
Creo que más o menos eso era lo que quería hechar afuera, en los siguientes posteos tengo pensado contar con más detalles mi estrategia de preparación para el examen de certificación y además incluir algunas noticias como la llegada de mi notebook (en realidad no se muy bien porqué nunca me había decidido a comprar uno, de hecho ahora estoy escribiendo esto desde él es como el cerdo araña de homero para mi ahora).
A futuro me gustaría comenzar a incluir noticias que me parezcan interesantes, no necesariamente sobre certificaciones si no también sobre tenología y temas relacionados con .Net y yerbas varias, se pondrá interesante la cosa.
Como siempre, si leiste todo esto te lo agradezco ya que en este momento me ha servido de desahogo.

Saludos y hasta luego.

miércoles, 14 de mayo de 2008

El fin del camino ? O un camino que tal vez recién comienza ?

Mhhh... tengo tantas cosas que escribir, tantas cosas que han pasado en este tiempo y como siempre me da flojera falta tiempo para escribirlas todas.
Creo que haré un resumen de algunas líneas y después profundizaré cada tema con más tiempo, la cosa va más o menos así:
  • En Febrero retomé los estudios para la certificación, decidí no comenzar a leer el libro de nuevo si no seguir adelante desde el capítulo 9 hasta el final, después vino una etapa de repaso y pruebas hasta que el día 7 de Mayo di el maldito examen y afortunadamente lo aprobé.
  • A fines de Abril me llegó el libro para la certificación 70-528 (desarrollo web) y ésta semana comenzé a estudiar de nuevo para esta nueva certificación.
  • Tengo planeado incluir los materiales que usé para pasar el 70-536 en algún post con más detalles incluyendo las peripecias por las que pasé para aprobar el examen.
  • El día 8 de Mayo mandé a pedir un notebook Dell y me llega a fin de mes, la idea es jugar trabajar y estudiar en la cama cuando llegue a la casa, por lo menos así mi polola señora no se va a quejar que me voy a acostar con los pies helados.
  • Con el notebook ya en las manos pienso dedicarme a escribir más seguido y no sólo sobre temas relacionados con las certificaciones, si no también sobre juegos las cosas que me pasan y las leseras que se me van ocurriendo, algo así como un desahogo mental (aunque a mi polola señora la otra vez se lo mencioné y me dijo "porqué no conversas esas cosas conmigo", algo de razón tiene pero me quitaría libertad de expresión al condicionar mis comentarios y justamente el blog lo quiero para dejar vagar mi mente sin restricciones, ojalá nadie se enoje aunque da lo mismo).
Eso sería así como resumen a la rápida, ya iré posteando las cosas que tengo pendientes y las nuevas que quiero escribir también si es que no me da flojera de nuevo.
Saludos.

martes, 26 de febrero de 2008

Capítulo 9 listo

El capítulo 9 trata sobre instalación y configuración de aplicaciones.
La lección 1 habla del namespace System.Configuration y cómo manejar los distintos seteos de una aplicación, ésto incluye el manejo de las secciones que debe tener un archivo de configuración y como crear, modificar y leer archivos de configuración.
La lección 2 habla sobre como crear un instalador de aplicaciones y los distintos posibles desenlaces que puede tener una instalación (si tuvo exito hacer commit, si hubieron problemas hacer rollback, etc.) .
La lección 3 habla sobre el uso de la herramienta de configuración que provee el framework 2.0 de .Net, aqui se ven los posibles acceso de los usuarios a una aplicación y la forma y recursos a los que tendrá acceso una aplicación.
La lección 4 habla sobre como implementar interfaces de configuración y como usarlas para manejar archivos de configuración.

En general éste capítulo es bastante útil ya que normalmente todas las aplicaciones (al menos las web) requieren manejar al menos un archivo de configuración (incluyendo sus secciones) para lo cual las lecciones 1 y 2 se hacen bastante familiares. Las 2 últimas lecciones la verdad no las encontré muy útiles y profundizan más en casos particulares pero de todas formas es bueno leerlas.

De vuelta a la vida

Al fin, después de ya 8 meses desde la última publicación y tras varios inconvenientes y desmotivaciones he decidido retomar este tema de una vez y por todas.

Ya no más excusas, no más distracciones, no más desmotivaciones, esta vez (espero) será la definitiva así que como siempre iré posteando los avances que voy logrando.

Así como resumen desde el año pasado hasta ahora sería algo asi: Empezé a estudiar, nació mi hija, me empezó al faltar el sueño, me tuve que cambiar de trabajo y mi motivación se fué al piso, estuve en un trabajo desmotivante y estresante, me hecharon (no entraré en detalles, sólo diré que fué una injusticia tremenda) y volví al trabajo anterior por lo tanto ahora agarré de nuevo las motivaciones y además ahora mi hija me deja dormir un poquito más (aunque nunca lo suficiente).

Hace un par de semanas me traje el libro de preparación para el examen 70-536 al trabajo y ahora estoy tratando de estudiar al menos una lección por día a la hora de almuerzo, no todos los días pero si al menos 3 de 5 días de la semana (eso me deja sin almuerzo normalmente pero es soportable).

Cuando retomé el libro estaba en la duda de si volver a leer todo o repasar desde cero o continuar desde donde lo había dejado, finalmente decidí continuar desde el capítulo 9 en adelante y cuando termine el libro repasar mucho y practicar lo más que pueda las preguntas que vienen de preparación, de ésta forma las metas a corto-mediano plazo son las siguientes:
- Continuar la lectura desde el capítulo 9 en adelante hasta el 16 poniendo énfasis en la base teórica, sin hacer los laboratorios pero sí dándoles una mirada y respondiendo las preguntas de cada lección y poniendo atención a los casos de estudio al final de cada capítulo.
- Una vez terminado el libro comenzar un repaso teórico y práctico (laboratorios) al libro completo.
- Comenzar con las pruebas que vienen en el CD.
- Hacer un repaso comparativo con el contenido de la MSDN.
- Hacer un repaso general y dar el examen.
- if (!exito) { repetir el paso anterior; } ---> Broma :P

Ya más a largo plazo la idea es seguir con el examen 70-528 y posteriormente con todos los demás hasta donde me dé la motivación (ojalá sea harta).

Ah casi lo olvido, como parte del apoyo me he inscrito en una clínica de preparación del examen la cual es gratuita y es dada en un centro de estudios mexicano (devworx), el curso en línea debería empezar el día 03-03-2008 y tengo muchas espectativas de él ya que espero sea de gran ayuda.

Así a grandes rasgos espero haber pasado el examen a más tardar a mediados de año, le ruego a Dios que así sea, por lo menos pondré todo de mi parte para llegar a ésta meta.