martes, 26 de mayo de 2015
Y ya se dieron cuenta de esto los padres de la informática, aquellos pioneros que hace cincuenta años andaban sentando las bases sobre las que se sustentan las tecnologías, herramientas y lenguajes que utilizamos hoy.
En este libro aparecieron por primera vez los Diez Mandamientos del Egoless Programming, que creo que deberían ser unas normas de lectura y aplicación obligatoria en nuestra profesión.
Los Diez Mandamientos del egoless programming
1. Entiende y acepta que cometerás errores.La cuestión es encontrarlos pronto, antes de que lleguen a producción. Afortunadamente, salvo para los pocos que desarrollan software de guiado de misiles, los fallos tienen raramente consecuencias fatales en nuestra industria, así que podemos, y deberíamos, aprender, reírnos, y seguir adelante.
2. Tú no eres tu código.
Recuerda que el objetivo de una revisión es encontrar problemas, y se encontrarán problemas. No te lo tomes personalmente cuando un error tuyo se descubra.
3. No importa cuánto “karate” sepas, siempre alguien sabrá más.
Esa persona puede enseñarte algunos movimientos nuevos si se lo pides. Busca y acepta información de otros, especialmente cuando piensas que no es necesario.
4. No reescribas código sin consultarlo antes.
Hay una fina línea de separación entre “corregir código” y “reescribir código”. Conoce la diferencia y realiza los cambios en el marco de una revisión de código, y no actuando como un justiciero solitario.
5. Trata a los que saben menos que tú con respeto, educación y paciencia.
La gente no técnica que trata con desarrolladores de forma frecuente casi siempre tienen la opinión de que en el mejor de los casos somos divas, y en el peor, llorones. No refuerces este estereotipo con ira e impaciencia.
6. La única constante en el mundo es el cambio.
Permanece abierto a ello y acéptalo con una sonrisa. Mira cada cambio a tus requisitos, plataforma o herramientas como un reto, no como un inconveniente contra el que hay que luchar.
7. La única autoridad real deriva del conocimiento, no de la posición.
El conocimiento genera autoridad, y la autoridad engendra respeto. Así que si quieres ser respetado en un entorno egoless, cultiva el conocimiento.
8. Lucha por lo que crees, pero acepta la derrota con deportividad.
Entiende que a veces tus ideas serán ignoradas. Incluso si resulta que estabas en lo cierto, no seas vengativo o digas “te lo dije” más de un par de veces, ni hagas de tu difunta idea una mártir o un grito de guerra.
9. No seas “ese tío de la habitación”.
No seas ese tío programando en una oficina oscura que emerge sólo para comprar coca-cola. Ese tío está fuera de la vista, del tacto, fuera de control y no tiene cabida en un entorno abierto y colaborativo.
10. Critica el código y no a la gente.
Sé amable con el desarrollador pero no con el código. Haz comentarios relacionados con los estándares locales, especificaciones de la aplicación, incrementos de rendimiento, etc.
Publicado en Variable not found.
Publicado por José M. Aguilar a las 9:05 a. m.
Hay
3 comentarios, ¡participa tú también!
Etiquetas: buenas prácticas, leyes
lunes, 25 de mayo de 2015
De nuevo, muchas gracias a todos por estar ahí :)
Y dicho esto, vamos al turrón…
.Net
- A Look at the Open Source JustDecompile Engine
Michael Cramp - WCF Client is Open Source
Ron Cain - When everything you know is wrong, part one
Eric Lippert
martes, 19 de mayo de 2015
Sinceramente, y ya lo he comentado en alguna otra retrospectiva anual, nunca pensé que esta aventura duraría tanto tiempo y me traería tantas satisfacciones. Y aunque he de reconocer que no es una tarea sencilla, el hecho de estar todavía aquí con ganas de seguir aprendiendo y compartiendo todo lo que puedo es para mí una compensación más que suficiente a la dedicación que esto requiere :)
Como manda la tradición, voy a comentar algunos detalles objetivos sobre la salud blog y sus visitantes, porque alguna vez me habéis comentado que os resultan interesantes estos datos.
lunes, 18 de mayo de 2015
.Net
- Back to Basic – string Vs. String in C#
Abhijit Jana - C# Futures: Nullability Tracking
Jonathan Allen - What's New in Visual Basic 14? String Interpolation and Multiline Literals
Peter Vogel - 3 misuses of ?. operator in C# 6
Vladimir Khorikov - Don't Forget Implicit Conversion Operators in C#
Khalid Abuhakmeh - Back to Basic – Calling base class constructor from derived class in C#
Abhijit Jana - Using Roslyn to build a simple C# interactive script engine
Christian Jacobsen - C# Futures: Managed Pointers
Jonathan Allen - C#/.NET Little Wonders: Expression-Bodied Members in C# 6
James Michael Hare
martes, 12 de mayo de 2015
Bueno, en realidad no se trata tanto de una ausencia como de un desplazamiento de esta característica. Resumidamente, las variables de sesión seguirán existiendo, pero no son parte del core de ASP.NET, como ocurría desde la primera versión de ASP.NET, sino un componente totalmente opcional implementado en forma de middleware que deberá ser instalado y configurado de forma independiente.
Pero antes de continuar, recordad que tanto MVC como ASP.NET Core siguen estando en proceso de desarrollo, por lo que algunas de las cosas que contaremos podrían cambiar en las versiones definitivas, aunque espero que no demasiado.
Y dicho esto, vamos al lío: ¿cómo utilizamos variables de sesión en aplicaciones basadas en ASP.NET Core?
lunes, 11 de mayo de 2015
.Net
- C#/.NET Little Wonders: Indexer Initializer Syntax
James Michael Hare - Writing and distributing Roslyn analyzers with MyGet
Maarten Balliauw - CQRS with MediatR and AutoMapper
Jimmy Bogard - Back to Basic – Events in C#
Shashank Bisen - Roslyn ships v1.0-rc2 with "Go-Live" license
Anthony D. Green
martes, 5 de mayo de 2015
String.Format()
para construir strings más complejos. Hace unos meses ya adelantamos por aquí sus principales características, aunque aún era algo pronto para poder probar en profundidad esta nueva y esperada feature. Ahora, más avanzado ya su desarrollo, ha llegado el momento de echarle otro vistazo más en profundidad y ver cómo queda finalmente (o casi finalmente, todavía podría cambiar algo!).
En este post vamos a ver rápidamente los puntos principales a tener en cuenta para dominar esta nueva característica que sin duda facilitará nuestro trabajo y nos hará más productivos.
domingo, 3 de mayo de 2015
.Net
- Learn Roslyn Now: Part 10 Introduction to Analyzers
Josh Varty - Automapper Performance Testing
Jamie Munro - What's Fixie and Why Should C# Programmers Care?
Jason Roberts - C# Futures: Tuples and Anonymous Structs
Jonathan Allen - Squirrel – replace ClickOnce the easy way
Gregor Suttie