Prueba Velneo Gratis

Te ofrecemos todo el poder de Velneo durante 1 mes para desarrollar la aplicación que tu empresa necesita.

Saber más
Thank you! Check your email for confirmation.

Las 9 tareas más difíciles para un programador

La mayoría de las personas que no son programadores asumen que el trabajo de desarrollar software es difícil -y es que lo es, pero no en la forma que se imaginan las personas que no programan software-.

En muchos foros de programación se pueden encontrar comentarios sobre las tareas más difíciles para un programador. Tras repasar ese hilo y otro más antiguo de los foros de Ubuntu, he decidido hacer una recopilación de las 9 tareas más difíciles para un programador.

Como conclusión general, resulta que escribir código no es una de las cosas más difíciles del trabajo de un programador de software. Si eres un desarrollador de software profesional, puedes ver a continuación cuantas de estas tareas identificas como las más difíciles de tu profesión.

Las 9 tareas más difíciles para un programador

9. Diseñar una solución

La tarea: Dados una serie de requisitos, diseñar y dar forma a la solución técnica que se tiene que implementar.

Esta tarea incluye el diseño de los datos y la estructura del código, los algoritmos funcionales y el flujo de la aplicación que engloba la lógica del negocio y satisface los casos de uso del software.

El reto: Estar seguro de que diseñas una aplicación que cumple los requisitos del cliente, que les tenga sentido y que se pueda desarrollar e implementar en el tiempo requerido.

8. Hacer pruebas

La tarea: Escribir pruebas unitarias, es decir, pruebas programáticas de pequeñas unidades de código para asegurarnos de que funcionan bien.

Este tipo de pruebas nos ayudan a depurar bugs desde las fases iniciales del desarrollo del software y hacen más fácil pruebas de regresión posteriores cuando haya que editar o actualizar el software. Algunas metodologías de desarrollo de software promueven que se escriban las pruebas antes de empezar a desarrollar el software, mientras que otras apuestan por hacerlo a posteriori.

El reto: Puede ser un proceso tedioso elegir qué pruebas unitarias hacer y escribir el código de las mismas, ya que siempre da la impresión de que es una trabajo adicional al del propio desarrollo de la aplicación que tenemos entre manos.

7. Redactar la documentación

La tarea: Crear documentación explicando qué es lo que hace la aplicación y como funciona.

Puede incluir documentos en forma de manual o comentarios en el código. El público objetivo puede ir desde el usuario final hasta otros desarrolladores.

El reto: Puede ser una tarea que consume mucho tiempo, que puede parecer una perdida de tiempo si nadie lo va a leer. A los programadores les gusta más picar código que documentarlo.

6. Implementar funcionalidades con las que NO estás de acuerdo

La tarea: Tener que implementar una característica o funcionalidad que, por el motivo que sea, sientes que no debería ser incluida pero que el cliente, o uno de tus superiores, insiste en que así sea.

El reto: Poner a un lado tus sensaciones personales y opiniones y dedicar tiempo y esfuerzo a implementar - y dar soporte a- la funcionalidad de que se trate.

5. Trabajar con el código de otros

La tarea: Tener que dar mantenimiento, depurar o mejorar una aplicación o el código que ha sido escrito por otro desarrollador.

El reto: Intentar entender cómo funciona el código heredado e intuir qué intenciones tenía el desarrollador original. Esto es incluso más difícil cuando el desarrollador original ya no está y el código está mal escrito, mal comentado y/o documentado.

4. Tener que tratar con otras personas

La tarea: Recopilar los requisitos de los clientes, elaborar informes del estado de las tareas a los responsables, trabajar con los beta-testers de la aplicación y debatir con otros programadores sobre el proyecto.

El reto: Explicar cosas técnicas a personas que no lo son, que tu trabajo dependa de terceros y estar en desacuerdo con el personal de control de calidad y otros desarrolladores.

3. Estimar el tiempo que va a tomar una tarea concreta

La tarea: Al principio de un proyecto, intentar concretar estimaciones del tiempo que tomará concluir la tarea.

El reto: Adivinar cuanto tiempo te va a tomar algo que nunca antes habías hecho, haciendo estimaciones basados en requisitos poco específicos e intentando incluir el tiempo necesario para solucionar imprevistos.

2. Explicar a lo que me dedico (y a lo que no)

La tarea: Hacer llegar a los no programadores (miembros de tu familia, amigos, compañeros de trabajo no técnico...) lo que implica tu trabajo -y lo que no.

El reto: Que tus seres queridos no entiendan qué es lo que haces para ganarte la vida. Que todo el mundo esté todo el rato pidiéndote que les resuelvas sus problemas con los ordenadores de forma generalizada.

1. Ponerle nombres a las cosas

La tarea: Crear nombres para tus variables, procedimientos, funcionalidades, clases, objetos y componentes de la base de datos.

El reto: Incluso una pequeña aplicación o programa puede requerir el hecho de ponerles un nombre. La elección de nombres apropiados que transmitan el sentido de lo que es la cosa o de lo que hace durante todo el proceso de desarrollo y que sean concisos.

Regístrate ahora y nuestro equipo se pondrá en contacto muy pronto