Ir al contenido principal

Si no sabes, no mientas

Hace tiempo necesitábamos sacar un proyecto que sería una prueba de concepto, algo rápido para probar una idea. La meta era sacar el proyecto en 2 semanas, el cliente solo quería saber si ese sería el mejor camino para resolver el problema. Le pedí a un programador que me ayudará con cierta tarea y al mismo tiempo le explique la importancia de tener algo listo en el menor tiempo posible. Al explicarle lo que debía de hacer le pregunté si ya lo había hecho antes, si sabía usar la herramienta. Porque si no, yo podría explicarle sin problema en una hora como hacerlo. De ese modo él iba poder seguir desarrollando. Me contestó que ya lo conocía y que no habría problema.

Al otro día revisé el repo y no estaba lo que había pedido. Le pregunté sobre el commit y me comentó que se le había pasado subirlo; pero que lo haría en ese día. Sin embargo al otro día seguía sin ver los cambios. No me gusta estar preguntando cada rato el clásico "cómo vas"; pero si no se ve avance en el proyecto no queda de otra más que preguntar. Me dijo que en un momento se lo aventaba... después de un rato me pidió ayuda porque no sabía como hacer lo que le había pedido. Esto fue casi tres días después de cuando le asigné la tarea y le pregunté si sabía.


No me hubiera molestado, para nada, que no supiera como realizar algo, porque pude haberle explicado y contemplar el tiempo necesario para aprender; pero como me dijo que sí sabía, no había planeado esos 2 días y ahora con dos días menos debía planear el tiempo que le llevaría aprender aquello que quizás pensó que podría googlear y sacar sin que me diera cuenta que no sabía.

Si necesito algo nuevo ¿Confiaré en que esa persona dará una solución? No. Ahora sé que no puedo confiar en que hará el trabajo, aunque diga que lo sabe hacer. No había necesidad de mentir, ni de tratar de hacer creer a los demás que sabía lo que no sabe. No está mal no saber, lo que sí está mal es mentir. Si no queremos decir "no sé", lo que debemos hacer es tratar de estar preparados para lo que se pueda necesitar, aprender lo nuevo lleva su tiempo y debemos estar en constante capacitación para mantenernos al día y ser útil cuando se necesite usar algo nuevo.

No debes tener miedo a decir que no sabes hacer algo o que no haz usado cierta herramienta. Nadie sabe todo. Lo más importante es la actitud, las ganas de aprender y tener sentido común. Si crees que perderás reputación por decir que no sabes algo, de nada sirve mentir, al final se va a notar que no sabes y va a salir peor. No solo serás la persona que no sabe, también serás alguien en quien no se puede confiar. Aprender algo nuevo es fácil, recuperar la confianza de los demás no tanto.

Comentarios

Entradas más populares de este blog

Bloqueos

Una de las preguntas típicas de las juntas matutinas en los equipos de desarrollo de software es ¿Hay algún bloqueo? Si lo hay, se trata de ver qué es lo que está esperando esa persona y encontrar la forma de que se desbloquee; pero ¿Qué son los bloqueos? Los bloqueos son obstáculos que te impiden realizar o avanzar en tu trabajo. Evitan que puedas seguir progresando en el proyecto.

He notado que es común en las personas con menos experiencia decir que tienen un bloqueo cuando están batallando, debido a su poca experiencia, en la forma de resolver un problema. Han intentado varias formas y se empiezan a quedar sin ideas de como puede ser resuelto el problema o como pueden cumplir con el requerimiento especificado. Al quedarse sin opciones de qué intentar dicen que tienen un bloqueo con la tarea y que a menos que alguien les diga como resolverlo, no se puede avanzar en la tarea.

En personas con más experiencia, ese tipo de bloqueos no ocurren, una persona con experiencia ha visto pro…

Firebird 2.1 UPDATE OR INSERT

Another great feature that I like in Firebird 2.1 is the UPDATE OR INSERT statement. It's a really time saver and it makes the SQL cleaner.

For example suppose I have a products table like the one I use in my last post and an inventory table to store the product stock. Before Firebird 2.1 if I want to set the stock for a product I needed to check if a record for that product_id already exists; if the product_id already exists then I write an update. If not then I write an insert statement. So I ended up with something like this:


IF EXISTS(SELECT * FROM inventory WHERE product_id = :product_id ) THEN
UPDATE
inventory
SET
stock = :stock
WHERE
product_id = :product_id;
ELSE
INSERT INTO inventory
(product_id, stock)
VALUES
(:product_id, :stock);

In this example I only update one field but when I have to update a big table I ended up with a big chunk of code and thinking: "there should be another (better) way to do this".

Fortunately now with Firebird 2.1 there…

Database Mail en MS SQL Server 2005

Configuración de Database Mail en MS SQL Server 2005

Primero se debe de habilitar, ya que por omisión el componente esta deshabilitado, Utilizando el SSMS (SQL Server Management Studio)


Si no esta habilitado aparecerá un mensaje preguntado si lo habilita, después aparece esta ventana donde se pregunta al usuario que es lo desea hacer.


Seleccionamos la primera opción para crear un perfil.


Configuramos el perfil y le agregamos por lo menos una cuenta.


Seleccionamos el perfil como public y default.


Para mandar correo se utiliza el procedimiento msdb.sp_send_dbmail por lo tanto el usuario que intente mandar correo debe de tener permiso para la base de datos msdb.

Referencias:
http://www.sqlservercentral.com/columnists/cBunch/introtodatabasemailinsql2005.asp