#retosMSDN: si eres desarrollador, te necesitamos
Hace ya tres meses que comenzamos a publicar los #retosMSDN. ¡Y parece que fue ayer! Hasta el momento hemos publicado 8 retos diferentes relacionados con C#, algunos propuestos por el equipo de MSDN España y otros propuestos por varios miembros de la comunidad: @eiximenis, @maktub82, @rf1souto, @angel_g_santos y @lantoli. Además, habéis sido muchos los que habéis participado en los retos y nos habéis enviado vuestras soluciones a esmsdn@microsoft.com semana tras semana. De hecho, hemos publicado muchas de estas soluciones, ya que la mayor parte de las veces no hay una única solución para resolver un problema, y creemos que es interesante ver otras maneras de hacer las cosas. ¡Muchas gracias a todos los que habéis participado de una manera u otra!
¿Qué hemos aprendido hasta ahora?
En estos retos hemos reforzado nuestros conocimientos de C# y de Visual Studio, y no son pocas las cosas que hemos podido ver.
Hemos trabajado con tests unitarios en la mayor parte de los retos y visto cómo crearlos y ejecutarlos (Reto 4), hemos creado librerías portables (Reto 1), utilizado LINQ (Language-Integrated Query) y expresiones Lambda (Reto 1, Reto 2, Reto 3, Reto 5, Reto 6, Reto 7) así como expresiones de LINQ (Reto 3), trabajado con eventos y Event Accessors (Reto 2), con Event Tracing for Windows (ETW) (Reto 2), hemos visto el uso de palabras clave como yield (Reto 3), unsafe y fixed (Reto 5), usado genéricos (Reto 3), métodos genéricos (Reto 4) y reflexión (Reto 3), hemos trabajado con método de extensión (Reto 3, Reto 4, Reto 5) y la cláusula where (Reto 3, Reto 5), usado indexers (Reto 5) y params (Reto 5), implementado operadores explícitos, hemos utilizado el atributo CallerMemberName (Reto 5), visto un posible uso de las WeakReferences (Reto 6), manipulado los atributos de visualización del depurador (Reto 6), hemos usado inicializadores de objetos (Reto 6), conocido clases como Tuple (Reto 7) e interfaces como IEnumerable, IEnumerable<T>, ICollection, ICollection<T>, IList e IList<T> (Reto 8).
Hemos conocido mejor librerías como Json.NET y fastJSON (Reto 7), características de Visual Studio como CodeLens (Reto 1), extensiones disponibles en la Visual Studio Gallery como Bing Developer Assistant Beta o las Productivity Power Tools 2013 (Reto 6, Reto 7), hemos conocido nuevas ediciones de Visual Studio como Visual Studio Community 2013 y repasado las Novedades de Visual Studio 2015 Preview y Visual Studio 2013 Update 4 (Reto 6).
Por cierto, si quieres saber más sobre C#, qué puedes llegar a hacer con él, acceder a cursos de formación gratuitos, etc., puedes leer este otro artículo: C# está en todas partes, y por supuesto participar en el último reto que hemos publicado: Reto 8 – Orden lexicográfico en C#. También recuerda que al instalar Visual Studio tienes acceso a todas las especificaciones de C# (Reto 5) y te pueden servir de referencia.
Ahora, ¿qué ayuda necesitamos?
Los #retosMSDN no son sólo los retos del equipo de MSDN, son los retos de todos los que somos desarrolladores. Por eso contamos contigo y de verdad necesitamos tu ayuda para hacer de estos retos los mejores retos posibles, con los que todos aprendamos y nos divirtamos. Así que si te preguntas de qué manera puedes ayudar, se me ocurren varias:
- Dinos por favor CÓMO PODEMOS MEJORAR, ya sea en nuestro Twitter, en nuestro Facebook, en este blog, o en esmsdn@microsoft.com. Esto es MUY IMPORTANTE para nosotros. Tanto si participas ya en los retos como si no, ¿qué cambiarías? ¿Qué mejorarías? ¿Te parecen muy fáciles o muy difíciles? Si hay algo que no te guste o no te parezca bien y eso hace que no participes o participes menos de lo que te gustaría, dínoslo. Es la única manera de que lo sepamos y podamos hacer algo al respecto.
- Participa en los retos y envía tus soluciones a esmsdn@microsoft.com para que las podamos comentar contigo y compartirlas con el resto de la comunidad llegado el caso. Cuantas más soluciones diferentes tengamos, más aprenderemos todos.
- Propón algún reto al resto de la comunidad. No tiene por qué ser de C#. Cualquier framework y lenguaje de los soportados por Visual Studio es válido. ¿VB.NET? ¿F#? ¿JavaScript? ¿NodeJs? ¿C++? ¿Python? Lo que quieras.
- Comparte los retos con tus amigos. Cuantos más seamos mejor. Dispondremos de más retos y más soluciones posibles.
¿Qué será lo siguiente?
El año que viene será el año de Visual Studio 2015, cuya Preview ya podemos disfrutar, .NET Framework 4.6 y lenguajes como C# 6.0. Una de nuestras ideas es apoyarnos en los retos para ir descubriendo todas sus novedades y aprender entre todos cómo sacarles el mayor partido. Pero como hemos dicho, estamos abiertos a cualquier sugerencia.
De momento y antes de que acabe el año propondremos varios retos más para que nos entretengamos durante las Navidades. Como durante estos días somos muchos los que tenemos algo más de tiempo, aumentaremos la frecuencia y publicaremos un reto cada viernes durante estas fiestas: el 19 de diciembre, el 26 de diciembre y el 2 de enero. Los iremos publicando en nuestro blog cuando lleguen las fechas indicadas, como hasta ahora. Como adelanto te diremos que podrás utilizar para resolverlos cualquier framework y lenguaje de los soportados por Visual Studio.
Un saludo,
Alejandro Campos Magencio (@alejacma)
Technical Evangelist
PD: Mantente informado de todas las novedades de Microsoft para los desarrolladores españoles a través del Twitter de MSDN, el Facebook de MSDN, el Blog de MSDN y la Newsletter MSDN Flash.