Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Programadores

neuronal's Diary
Por neuronal
departamento grandes-verdades-de-nuestro-siglo , Sección Diarios
Puesto a las Tue Apr 15th, 2003 at 02:42:00 AM CET
Periodo temporal: 10:30 h.
Lugar: prácticas de Cálculo Infinitesimal.

Entre las grandes explicaciones del profesor acerca del maravilloso mundo de la representación de funciones se hace un stop. Dos segundos de ligero silencio y una pequeña sonrisa esbozada por el propio profesor, que dice:

 


«Sabéis eso que dicen de los programadores, ¿no?

Cuentan que hay dos tipos de programadores: el compulsivo y el perezoso.

Si ponemos a dos programadores, uno compulsivo y otro perezoso, delante de un determinado problema de programación, veremos que el compulsivo se lanza sin pensárselo dos veces a escribir código con el fin de terminar cuanto antes. Mientras que el perezoso se lo deja aparcado para otro momento y se pone a hacer cualquier otra cosa -cortar el césped, dar un paseo, ...cualquier cosa-

Pasado un tiempo, el perezoso decide ponerse con el problema de programación que le han planteado, resolviéndolo en un tiempo razonable. Y, sin embargo, para cuando éste haya terminado, el compulsivo seguirá varias semanas más.

Moraleja: uno, frecuentemente, empieza en la programación siendo del lado de los compulsivos. Uno empieza a afrontar mejor los retos de programación cuando aprende primero a ser perezoso y deja de un lado la idea compulsiva de intentar hacer líneas de código a diestro y siniestro para terminar lo antes posible: irónicamente, esto rara vez funciona y necesitas más tiempo de lo razonablemente necesario.
»

¿Debe ser que aun no soy lo suficientemente perezoso (uufff... difícil lo tengo para superarme a mí mismo en pereza) para afrontar la programación sin que me pasen cosas como... (las catástrofes que me suelen pasar)?

A partir de ahora prometo tomármelo con más calma.
... Intentarlo vamos.
< OpenOffice 1.0.3 liberado (1 comments) | Apple puede estar planeando la compra de Universal Music (19 comments) >
Enlaces Relacionados
· More on neuronal's Diary
· Also by neuronal

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
Programadores | 10 comentarios (10 temáticos, editoriales, 0 ocultos)
la teoría y la práctica (none / 0) (#1)
por preage a las Tue Apr 15th, 2003 at 03:50:13 AM CET
(Información Usuario) http://geocities.com/dariapra

Creo que razón no le falta a ese profesor tuyo. Me recuerda a un libertoniano que firma con una cita Dijkstra que dice algo así que la ciencia de la computación es a los ordenadores lo que los telescopios a la astronomía.

De todas formas hay una diferencia entre la teoría y la práctica. Y es que si estás trabajando en un empresa y el tiempo de entrega del proyecto está peligrosamente cerca, suele ocurrir que apenas haya tiempo para escribir, de modo que ponerse en modo "perezoso" no es buen plan.

(Y además, suele ser más importante que funcione si lo hace a tiempo que que funcione bien; recuerda que it's not a bug, it is a feature!).



Tienes razón (none / 0) (#4)
por musg0 a las Tue Apr 15th, 2003 at 09:59:39 AM CET
(Información Usuario) http://helvete.escomposlinux.org

Muchas veces al inicio del proyecto todo son buenas ideas, preparación, diseño, etc...

Al final, esas buenas ideas se convierten en churros de código ininteligible que hay que acabar cuanto antes con un "precioso hack" en vez de como se diseñó previamente porque el plazo se hecha encima

Luego, a la de 3 meses, cuando aparecen los primeros fallos cualquiera mete mano a esa chapuza.

El caso más flagrante de los que he programado fue una web en asp.net en la que estuvimos trabajando 1 mes para acabar haciéndola en asp de toda la vida en 3 días porque no llegábamos al plazo.

[ Padre ]


 
De acuerdo con la reflexión (none / 0) (#2)
por melenas a las Tue Apr 15th, 2003 at 09:03:05 AM CET
(Información Usuario)

Normalmente si no doy con la solución en vez de amargarme pensando me voy a hacer otra cosa, ver la tele, echar una partidita a algo, salir a hacer deporte...

Posteriormente me vuelvo a poner de lleno con el problema y generalmente con la cabeza ya más despejada doy con la solución, y eso si no la he encontrado antes en un momento de inspiración durante el tiempo de relax.

Saludos y hasta otra

FDO. ER_MELENAS No te preguntes sólo que puede hacer el S.L. por ti sino también que puedes hacer tú por él.


 
Eso me recuerda.. (none / 0) (#3)
por Liso (anlismon.quita@esto.gmail.com) a las Tue Apr 15th, 2003 at 09:49:19 AM CET
(Información Usuario) http://www.tlotb.org

A los famosos ciclos de vida del software :). Si, esta muy bien eso de diseñar el algoritmo para solucionar el problema, comprobarlo teoricamente, y luego implementarlo.
Pero dile eso a tus jefes. Cuando tienes que hacer un programa, que tiene un tiempo estimado de desarrollo de unos 6 meses, en 3 meses los jefes quieren que el 1º dia este algo visible, JODER!!, es que no saben que para hacer una cosa bien, hay que tomarselo con calma y tener la cabeza bien amueblada.
Si, tu profe tiene mucha razon... pero en el 90% de las empresas tu jefe no habra oido la expresion "ingenieria del software" ni sabra lo que es un algoritmo.
Algun dia se tomaran en serio lo que dicen los informaticos, pero hasta entonces... "BIBA LLO Y MIZ CONPANYEROZZZ!!"
Si es q me quema...


Liso -Eadem Mutata Resurgo-
Linux has you...


Hay 10 tipos de programadores ;) (none / 0) (#5)
por Colegota (colegota@villanos.es, digo net.) a las Tue Apr 15th, 2003 at 10:12:36 AM CET
(Información Usuario) http://villanos.net/mapamundi

Buenas,

coincido en que ese profesor anda muy lejos de lo que es el mundo real.

Sobre la programación como forma de ganarse la vida en una empresa me quedo con esta frase de todas las que he visto/oído:
"¡Eh chicos! Vosotros ir programando que yo iré a ver lo que quieren".

Pero tanto en la empresa como en el mundo real, si algo puede diferenciar a los programadores es si antes de hacer un programa lo piensan, diseñan, estructuran... o si se ponen a ver qué sale y van corrigiendo sobre la marcha.
La experiencia demuestra que si pones a los dos programadores tipo a desarrollar un mismo programa, el primero "dirá" que ha terminado mucho antes que el segundo. Es un tiempo más que record.
Poco después el segundo entregará el programa finalizado mientras que el primero todavía pasará mucho tiempo intentando que el suyo *funcione*.
Por supuesto que el código bien pensado y bien escrito luego será mucho más modificable y ampliable. Y que el de "a bote pronto" no habrá por dónde cogerlo.

Y es que como decía el título, de bits y de programadores hay 10 tipos: unos y ceros.
:)

Saludos,
Colegota


[ Padre ]


El mundo real (none / 0) (#6)
por ochoto (ochoto_@_diariolinux.com) a las Tue Apr 15th, 2003 at 11:25:46 AM CET
(Información Usuario) http://diariolinux.com

coincido en que ese profesor anda muy lejos de lo que es el mundo real.

Más bién diría que el mundo real anda muy lejos de como debería ser y hay que corregirlo, aunque es dificil convencer a tu jefe cuando no tiene ni idea (es todavía peor si tiene "algo" de idea) ¡ La ignorancia es atrevida !

Si nosotros que somos los que lo sufrimos no hacemos un esfuerzo consciente por frenar a esos caballos desbocados (jefes, comerciales...) no pararan nunca y continuaremos haciendo las cosas corriendo, deprisa y mal.

Por otra parte a veces es buena idea "empezar a programar y ver que sale" cuando nos enfrentamos a un problema complejo y somos plenamente conscientes de que el prototipo irá a la basura y solo obtendremos de el la experiencia.

Esto me ha salvado el culo un par de veces aunque la verdad es que el jefe no lo sabía ;)



[ Padre ]


Hay otros mundos... (none / 0) (#7)
por Colegota (colegota@villanos.es, digo net.) a las Tue Apr 15th, 2003 at 01:04:49 PM CET
(Información Usuario) http://villanos.net/mapamundi

...pero están en este :(

Buenas,

> Más bién diría que el mundo real anda muy lejos de como debería ser

Por eso se le llama real ;)

> y hay que corregirlo, aunque es dificil convencer a tu jefe cuando no tiene ni idea...

Y la mayoría de las veces, intentarlo es contraproducente y se vuelve contra tí.

> Si nosotros que somos los que lo sufrimos no hacemos un esfuerzo consciente por frenar a esos caballos desbocados (jefes, comerciales...) no pararan nunca y continuaremos haciendo las cosas corriendo, deprisa y mal.

Desgraciadamente, me temo que la única forma para no acabar así es dar con un jefe "que sepa", dudo que se pueda hacer cambiar a muchos. Pero dar con uno que sepa realmente es difícil (lo de los comerciales lo dejo por imposible).

> Por otra parte a veces es buena idea "empezar a programar y ver que sale" cuando nos enfrentamos a un problema complejo y somos plenamente conscientes de que el prototipo irá a la basura y solo obtendremos de el la experiencia.

Bueno, pero eso es otra cosa. Cualquier diseño lo basas en la experiencia y siempre que te enfrentas a problemas nuevos o poco "trabajados" es bueno pegarse con la máquina para ver tanto sus posibilidades como las tuyas.
Pero después párate un momento, mira lo que has obtenido... y reorganízalo. Si tienes tiempo, claro :)

Saludos,
Colegota


[ Padre ]


 
Esto da para una historia (none / 0) (#8)
por Draco a las Tue Apr 15th, 2003 at 02:48:59 PM CET
(Información Usuario)

Eso que dice tu profesor lo había leído yo en forma de historieta, en la que se le encarga el mismo proyecto a dos programadores.... Como no quiero fastidiarla, dentro de un rato la busco...

Todo está viciado desde el principio. ¿Cómo se calcula la productividad de un programador? ¿En líneas de código y horas trabajadas? ¡Ja!, y sin embargo esas son las métricas que se usan porque son fáciles de cuantificar. ¿Que pasa con los bugs, la duplicidad de código, la reusabilidad, la claridad...? ¿Cómo se mide eso?

En el mundo real, el primer programador sería mucho mejor valorado por las métricas que el segundo...
There are two major products to come out of Berkeley: LSD & BSD Unix. I don't believe this to be a coincidence.


Aqui está (4.00 / 1) (#9)
por Draco a las Tue Apr 15th, 2003 at 02:53:37 PM CET
(Información Usuario)

La historia es ésta. Es un cuento, y por tanto está exagerado...
There are two major products to come out of Berkeley: LSD & BSD Unix. I don't believe this to be a coincidence.
[ Padre ]


Y está traducida (¿ande andará?) (none / 0) (#10)
por jcantero (jcantero@agujero-negro.escomposlinux.org) a las Tue Apr 15th, 2003 at 04:33:21 PM CET
(Información Usuario) http://www.escomposlinux.org/jcantero/

Esa historieta circulaba traducida cuando yo estudiaba la carrera. Por desgracia, coincido con todo lo que se ha dicho en el resto de comentarios: una cosa es lo adecuado, lo que se enseña, lo práctico, lo inteligente, ... y otra cosa es como se está programando en la empresa real: bajo presión sin criterios y con una falta de profesionalidad de temer por parte de los responsables, a los que sólo preocupa el día a día.

No es normal que tengamos la fama que tenemos. Y es que como dice esa famosa signatura: "Si los constructores hicieran las casas tal y como los programadores hacen sus programas, el primer pájaro carpintero hubiera destruido la civilización".

--
"Papá, ¡Internet es más que una red pornográfica global!" -- Lisa Simpson
[ Padre ]


 
Programadores | 10 comentarios (10 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda