it-swarm-es.com

¿Está fuera de lugar para dar críticas constructivas no solicitadas a un programador?

Recientemente comencé a trabajar en New Office que utiliza un programa propietario escrito por un desarrollador solitario. Ocasionalmente, se ha convertido en soporte técnico a tiempo parcial, pero la compañía se ha registrado en este software y ya no se le paga para desarrollarlo.

Como usuario de su software, hay muchos problemas que me saltan como una fuente de preocupación:

  • muy simple de ver directamente el DB como usuario de bajo privilegio
  • contraseñas almacenadas como texto plano
  • diccionario de contraseñas de administración
  • la aplicación utiliza la cuenta raíz de DB
  • DB no cumple con 1nf (por ejemplo, cita1, cita2, etc.)

Siento que estos son problemas serios y que si yo fuera él, quisiera que me apuntaban, pero no soy un programador calificado (soy un trabajador social) y no sé si sería grosero. De mí, a solo conjuntos, y comienza a bloquear los hashes salados y las formas normales, especialmente cuando esto ya no es una tarea pagada de su.

¿Está fuera de línea? Si no, ¿cómo lo abultarías?

Editar - más información solicitada por los comentarios :

  • La aplicación tiene datos confidenciales.
  • Es para uso interno, pero se está ejecutando en muchas máquinas en varias ciudades y muchos visitantes vienen a través de nuestras oficinas.
  • Mis preocupaciones son para los proyectos futuros del desarrollador, así como este específico.
11
Ian Mackinnon

Si no está en condiciones de cambiar el código usted mismo, debe decidir qué problema es el más importante y se acerca a él. En lugar de expresarlo como "crítica", lo hace bajo el disfraz de "retroalimentación".

Cuando digo comentarios, me refiero a un proceso muy distinto de afirmar el comportamiento y el efecto de ello, en la línea de "cuando x, aquí es lo que pasa ..." y hablar estrictamente de cosas son directamente observables. No lo ataces, su profesionalismo, etc. Quédate a los hechos.

Para obtener una gran descripción de la brindar comentarios de Peer, escuche esta POSTCAST : http://www.manager-tools.com/2006/10/the-peer-feedback-model

Si tiene éxito con el primer elemento, pase a la siguiente más importante.

¡Buena suerte!

14
Todd Williamson

Como trabajador social, lo apreciaría si este programador vendría a usted para que te aconsejará sobre cómo pensó que había maliciado un caso importante, una vez trabajó, pero ya no fueron asignados.

Yo diría que estaría en un terreno muy tembloroso para acercarse a ti; Lo contrario también es cierto.

En las circunstancias, diría que si tiene inquietudes por el estado de seguridad de la solicitud en cuestión (y dado lo que ha escrito aquí, usted debería tener tales preocupaciones), eso sería mejor Se desempeñó brindando sus preocupaciones a quienes tienen algún poder de efectuar correcciones. Tratar de educar al ex desarrollador no es su Bailiwick, y es más probable que se vea como interferencia que cualquier otra cosa.

6
Cyberherbalist

No creo que haya mucho punto discutiendo esto con el programador. Para empezar, él podría no tomar amablemente a que le dijeran cómo hacer su trabajo por un "aficionado".

Sin embargo, puede señalar cualquier problema de seguridad graves a su administración. Déjalos decidir qué hacer al respecto. En algunos casos, suena como si las correcciones serían cambios simples en los permisos de la cuenta de la base de datos que se pueden implementar en unos pocos minutos.

Pero usted (y la administración) también deben considerar si la seguridad de esta solicitud realmente importa. ¿Contiene información valiosa o sensible? ¿Es probable que tenga problemas con los empleados descontentos? ¿Está la red correctamente asegurada?

4
Stephen C
  • ¿Conoces la historia detrás del programa? Tal vez se escribió en un marco de tiempo muy corto donde el desarrollador hiciera estas decisiones bastante rápido, ya que el software tenía que hacerse lo más rápido posible sin un montón de investigando que se hiciera.

  • ¿El soporte incluye parches en el código? Esto puede funcionar para algunas cosas menores que el código tiene que ver los problemas importantes. El otro pensamiento es lo difícil que sería reemplazar este software.

Hay casos en los que un compañero ayudando a un par de críticas constructivas no solicitadas puede funcionar, pero esto es un poco diferente a mi mente. Yo diría que sea sensible acerca de cómo comunica los problemas y trata de mantenerlo profesional.

4
JB King

Como ya no se le paga para trabajar, probablemente no. Hay dos posibilidades:

  • Él sabe que es mierda y no lo ha arreglado.
  • Piensa que es bueno, así que no lo ha arreglado.

En cualquier caso, decirle que tiene fallas serias no lo va a mejorar, ya que ya no se está desarrollando.

4
Fishtoaster

En primer lugar, como usuario final, usted es uno de los interesados ​​más importantes de este proyecto de desarrollo de software. ¡Sus puntos de vista son totalmente válidos, y merecen ser escuchados por la gerencia!

En segundo lugar, parece que sabe de qué está hablando (ya sabe cuando un DB no está correctamente normalizado), independientemente de su título de trabajo o credenciales académicas.

En tercer lugar, obviamente se siente muy fuerte acerca de este asunto.

Así que debe expresar sus inquietudes a la gerencia. Solo asegúrese de que usted indique su caso articuladamente y de manera muy respetuosa.

3
A. N. Other

No lo traigas a él. Traíalos a tus jefes.

--- editar ---

Ah, y hágalo por escrito, en un correo electrónico (con acuse de recibo de recibo si su servidor de correo lo admite). Mantenga el correo electrónico y todos los acuse de recibos y recibos posteriores (imprímalos y escanee en PDF ... y mantenga Tanto los PDF como los equipos de impresión.)

Debido a que soplar la tapa en los problemas que acabas de mencionar podría hacerlo conversión. Después de todo, fueron escritos bajo las narices de tus jefes, por lo que son parcialmente responsables de ello (o alguien en la cadena alimentaria).

Eso significa que existe la posibilidad distintiva de que sus esfuerzos profesionales y éticos para elevar los problemas graves podrían no ser recibidos por alguien por encima de usted. Así que guarda el registro de todas las conversaciones relacionadas con este problema.

Porque, si las cosas afectan al ventilador debido a las preocupaciones de seguridad, tienes un registro que hiciste tu parte. Y documentando todo (incluidos los problemas de seguridad), puede cubrir su trasero cuando los médicos de giro entren en su lugar.

2
luis.espinal

¿Cuál es su intención de decirle al programador que su código necesita mejoras?

¿Estás tratando de que sea un mejor programador? Luego, sí, estás fuera de línea, no es tu lugar para decirle que sus habilidades de programación son subpar.

Si su objetivo es aumentar las preocupaciones de seguridad sobre el código, entonces sí, eso puede ser apropiado, pero no con el programador. Hable con quien esté a cargo de la solicitud y pregunte si están interesados ​​en algunas preocupaciones que tiene. No solo vayas a decir "Oye, ¿sabes esa aplicación que mantiene los registros de FOO? Mucha, y aquí es por qué". Describa el problema separado de los problemas de cómo se puso de esa manera, y quién lo hizo.

Considere si notó que la puerta superior al almacén estaba asegurada por la noche con un pedazo de cordel. No dirías que "su seguridad apesta, y quien lo configure es un idiota, y si no lo arreglas ahora, estás jodido". Incluso si supiera toda la historia de fondo sobre cómo se puso de esa manera, lo dejarías todo.

En su lugar, dirías: "Vi algo que pensé que debería señalar. Vi que la puerta del almacén está cerrada con cordel, y me temo que no sería lo suficientemente fuerte como para mantener fuera un ladrón determinado". Está completamente concentrado en el problema que ves, y no entra en el drama de cómo se puso de esa manera.

Y si dices "Oye, tengo problemas de seguridad" y dicen "Sí, está bien, es interno, no es un gran problema", luego déjalo caer. Has hecho tu trabajo.

2
Andy Lester

Mi experiencia es que los desarrolladores rara vez toman la crítica bien (¿quién lo hace?). Es por eso que hay tantos argumentos religiosos calientes sobre cualquier cosa que ver con la programación (mejor idioma, plataforma, marco). Así que simplemente lo traí en una conversación informal mientras mencionas que has estado mirando el sistema.

1
Craig