¿Cómo me mantengo al día de la información técnica?

Mucha gente me ha preguntado como consigo estar al día de las novedades tecnológicas del mundillo SharePoint/NET/Web/JS sin morir en el intento. En este post intentaré resumir lo que hago yo.

information-overload[1]

Ojo, no sugiero que lo que me funciona a mí te va a funcionar a ti también, pero por intentar que no quede, ¿verdad?

Fuente de información #1: Twitter

Uso Twitter para filtrar las noticias importantes. La lógica es la siguiente: si sigo a la gente que más o menos son de mi perfil tecnológico, es muy probable que twiteen o retwiteen noticias o contenido interesante para mí. En este sentido, mi red de contactos actúa como una caja de resonancia de lo verdaderamente importante.

Fuente de información #2: Newsletters

Para la información más detallada y “asíncrona”, estoy suscrito a varias newsletters que me envían periódicamente noticias de interés sin demasiada “paja” de relleno. Os pongo aquí las que me llegan:

  • InfoQ – Si tuviera que recalcar una publicación, sería esta. Son los organizadores de la QCon, la conferencia de desarrollo que se celebra en varias ciudades cada año. Principalmente me interesan las noticias de .NET, arquitectura y de prácticas de equipo.
  • Simple Talk – El newsletter de la gente de Red Gate. Un poco orientado a sus productos de profiling y de gestión de BBDD, pero con el contenido bastante útil al final.
  • DZone – Noticias de desarrollo, arquitectura y un poco de gestión de proyectos infomáticos. No tan útil para mí como InfoQ, pero de vez en cuando hay algo interesante como este artículo.
  • Methods & Tools – Es una publicación un poco “retro” orientada a desarrolladores y arquitectos. Publican una revista PDF cada 6 meses con artículos interesantes.
  • SharePoint Community – Noticias y novedades del mundillo SharePoint y Office 365.
  • Technically Speaking – Es el newsletter más personal que recibo. Lo edita Chiu-Ki Chan, una desarrolladora ex-Google que vive en EEUU. Los temas que cubre son básicamente “call for speakers”, organizar conferencias y charlas, hablar en público y la igualdad de género en la informática. Me va muy bien para mi “trabajo” en SUG.CAT.

Fuente de información #3: Revistas

Las revistas (en PDF y en papel) siguen siendo mi fuente de información “en profundidad”. Me inspiran para probar cosas nuevas y me dan ese conocimiento previo a meterse a trastear con algo nuevo.

Me suscribo para que me lleguen a mi buzón cuando haya un nuevo número.

  • MSDN Magazine – La revista “oficial” de .NET, con artículos de calidad (aunque a veces demasiado alejados del día a día) y temas en el “cutting edge” como dirían los anglosajones. Disponible en papel, en PDF y online.
  • DotNetCurry – La revista india de .NET. Artículos más asequibles, aunque la maquetación es a veces demasiado “Bollywood”. Hacen entrevistas a gente destacada del mundillo .NET.
  • Compartimoss – “LA” revista de SharePoint de habla hispana. Si eres SharePointero (o Office 365ero) la debes seguir. Punto.
  • DIWUG eMagazine – Revista en inglés de SharePoint, editada por el grupo de usuarios de SharePoint de Países Bajos. Artículos de mucha calidad. A veces está disponible en papel, en eventos europeos de SharePoint.

Fuente de información #4: Blogs

Siguiendo con la información en profundidad, sigo usando un agregador de blogs (ahora mismo Feedly). Allí tengo una colección de blogs de NET, de SharePoint, de otros hobbies y de compañeros como Robert Bermejo, que está que se sale con su blog de Azure.

Otro tipo de blogs que sigo son los de agregación de novedades, como Variable Not Found y This Week in .NET.

¿Cómo gestiono todo esto?

Aquí está la proverbial “madre del cordero”. Con el tiempo que tengo al día, ¿cómo gestiono todas estas fuentes de información?

Lo que hago es aprovechar el viaje en metro de cada día para ponerme echar un vistazo a Twitter y a Feedly. Si hay algo que merece una lectura más profunda, me lo apunto en OneNote.

Los newsletters y las revistas llegan cuando llegan. Lo que hago es programarme su lectura: un ratito el fin de semana, en el descanso, en un viaje… Lo mismo hago con las cosas apuntadas en OneNote: me programo su lectura.

Al mediodía, después de comer, echo otra batida por Twitter a ver si hay algo nuevo. Igual que por la mañana, apunto en OneNote cosas de interés para leérmelas con más detalle.

Supongo que mi flujo de información no es todo lo óptimo que podría ser, pero de momento me da buenos resultados. Al final, creo que es responsabilidad personal de cada profesional estar al día de su ámbito de acción.

Y vosotros, ¿qué pensáis?

 

UpdatePanel Troubles with SharePoint 2013

Few weeks ago I had a nasty bug on customer premises where a combination of SharePoint 2013 and ASP.NET UpdatePanel control resulted in some very weird behaviour.

THE SYMPTOMS

Our project consisted of several full-trust code ASPX pages, dutifully placed in _layouts folder. Two of these pages had ASP.NET AJAX UpdatePanel controls to give “a kind of” smooth user interaction experience. The reason to use it was the simplicity of wrapping the existing SharePoint server controls such as grids and buttons in the update panel to prevent page reloads on postbacks. (Yes, I know it’s legacy technology but still, sometimes it’s the best and simplest solution for a given problem).

However, these pages gave random errors as if their event was somehow lost between the UpdatePanel client-side code and the server-side postback. Randomly, we had errors in our pages, with no discernible pattern. The only clue was in the ULS logs, where there were no user claims associated with the request, as if it were a non-authenticated call. What’s worse, as it had no clear cause, our reproduction procedure was to mindlessly click the buttons in the hope of a random error. Needless to say, it was way too inefficient.

Googling around, I found a way to reproduce the errors using Fiddler HTTP debugging tool. The sequence of steps is to make the first page load with Fiddler running in the background. Then, I deleted all the captured traces in Fiddler and clicked the button inside UpdatePanel. Immediately, the UpdatePanel threw the dreaded error.

THE CAUSE

According to the Microsoft KB3062825 article, the cause is the mismatch between the HTTP protocol implementation in UpdatePanel and SharePoint 2013, where instead of returning a 401 code in the handshake, SharePoint returns 200 with the login redirect and the UpdatePanel loses its changes. It only applied to a certain combination of SharePoint 2013 and .NET Framework, and even in these combination it wasn’t certain that the error would happen.

Unfortunately, we were in that situation, with the right combination of SharePoint and .NET versions.

THE SOLUTION

The solution is simple: applying a specific .NET Framework hotfix (for Windows Server 2012 R2, for Windows Server 2012) that’s meant to patch the HTTP protocol handling causing the error. The patch is available via Microsoft support, but it’s not publicly available. I think that it’s because the error isn’t deterministic enough to be included in a regular cumulative update or service pack.

You also have to install SharePoint 2013 SP1, together with a Cumulative Update from December 2014 (or later).