Scott Hanselman

Scott Hanselman es Gerente de Programa para Desarrolladores en Microsoft. Sus actividades consisten principalmente en diseminar información sobre mejores prácticas y tecnologías para desarrollar software. Sus especialidades incluyen el diseño de interfaces humanas y arquitectura de aplicaciones de gran escala. Scott es coautor de diversos libros tales como: “Professional ASP.NET MVC 1.0”, “Professional ASP.NET 3.5”, y “Code Leader”.¿A qué te dedicas en Microsoft?
Mi trabajo consiste en manejar la comunidad online para Microsoft Developer Tools. Esto significa encontrar las mejores maneras de conectarme con la comunidad de desarrolladores y asegurarme de que están obteniendo lo que necesitan. Por ejemplo: ¿están encontrando respuestas a sus preguntas?, ¿hay buenos contenidos (videos, blogs, cursos, artículos, etc) para que aprendan?, ¿la comunidad se encuentra saludable y activa?, ¿están habilitados para poder hacer más?

¿Qué habilidad consideras más importante para un desarrollador de software?
Creo que la habilidad más importante es la comunicación. Puedes ser el mejor programador del mundo pero si no puedes hacerte entender, entonces no sirve de nada.

¿Consideras que hay demasiados frameworks para aplicaciones web?
Realmente no creo que sean tantos. Desde mi punto de vista están ASP.NET, Django, Java, Rails y luego el resto. Creo que así como nunca habrá un solo idioma hablado (inglés vs. español) tampoco habrá solo un framework para aplicaciones web. Siempre habrá alguien que piense que puede hacer algo mejor, y eso es bueno.

¿Qué pueden hacer las universidades para preparar al tipo de ingenieros de software que necesita la industria?
Tengo experiencia como maestro, y considero que los recién graduados de universidad salen sin el suficiente conocimiento de los aspectos básicos. Me refiero a temas como direccionamiento de memoria, funcionamiento de sistemas operativos, funcionamiento de compiladores, recolección de basura, etc. Hay quienes ni siquiera saben como convertir un número hexadecimal a decimal sin una calculadora.

¿Qué le recomendarías a los estudiantes próximos a graduarse?
Mi principal consejo es que busquen obtener experiencia. Para esto les recomiendo involucrarse en un proyecto de
software libre y contribuir código. El objetivo es que cuando se gradúen ya hayan trabajado en por lo menos un proyecto real. También es buena idea que escriban un blog para practicar sus habilidades de comunicación escrita.

¿Qué tendencia en la industria de software actualmente te emociona más?
Posiblemente la tendencia hacia la simplificación e interoperabilidad que nos llevará a la portabilidad de datos (data portability). El poder usar HTTP, JSON y/o XML para fácilmente llevar los datos de un lugar a otro (o de una aplicación a otra) abre muchas posibilidades. Sin embargo, la pregunta es: ¿nos dejarán las empresas (por ejemplo Facebook) tener acceso y control sobre nuestros propios datos?

Tal parece que pronto veremos avances significativos en el campo de las interfaces entre humanos y computadoras. ¿Qué opinas al respecto?
Creo que el siguiente gran paso es masificar el reconocimiento de movimientos. En principio será con hardware especializado, y eventualmente podremos hacerlo con webcams tradicionales. El escenario de uso que yo visualizo es similar a lo que hacía Tom Cruise en la película “Minority Report”. Seguramente los lectores de SG están enterados del proyecto Natal de Xbox para reconocer movimiento por medio de cámaras. Creo que si Natal es exitoso, entonces todo cambiará.