383 meneos
13509 clics

¿Por qué desapareció Pinball de Windows?  imagen

Windows XP incluía varios juegos nativos, entre los que se encontraban los míticos Solitario, Carta Blanca o Buscaminas. Pero, además, el sistema operativo contaba con un título de pinball, 3D Pinball for Windows - Space Cadet. Sin embargo, no llegó a Windows Vista. ¿Por qué desapareció Pinball de Windows? Según explicó Raymond Chen, ingeniero de Microsoft, el motivo fue que su código era demasiado complicado.
etiquetas: mala programación, pinball, windows
usuarios: 211   anónimos: 172   negativos: 4  
75comentarios mnm karma: 649
  1. #1   Una lección para todo desarrollador: Hacer el código de fácil lectura, bien documentado, estandarizado y con métrica de complejidad ciclomática baja (es.wikipedia.org/wiki/Complejidad_ciclomática)
    votos: 12    karma: 114
  2. #3   #2 si lees el artículo verás que el código no es de Microsoft es de una tercera compañía, MS sólo tenía la licencia para usarlo en su SO
    votos: 49    karma: 432
  3. #4   Me suena mas, que este tipo de cosas pasan por haber despedido a un programador y sustituirlo por becarios que cobra 5 veces menos, aunque tarden mucho mas en hacer el mismo trabajo.
    votos: 3    karma: 35
  4. #5   Eso es debido a que lo escribió Chuck Norris.
    votos: 0    karma: 9
  5. #6   #5 el teclado de Chuck Norris solo tiene 2 botones, 1 y 0
    votos: 20    karma: 165
  6. #7   Trabajo en mi empresa desde hace un año dando servicios de auditoría de código midiendo la calidad del software...

    "Yo... he visto cosas que vosotros no creeríais: Atacar naves en llamas más allá de Orión. He visto rayos C brillar en la oscuridad cerca de la Puerta de Tannhäuser. Todos esos momentos se perderán... en el tiempo... como lágrimas en la lluvia. Es hora de morir."
    votos: 11    karma: 95
  7. #8   "Always code as if the person who will maintain your code is a maniac serial killer that knows where you live" (Codifica siempre como si la persona que fuera a mantener tu código fuera un asesino en serie maníaco que sabe donde vives) True History
    votos: 15    karma: 128
  8. #9   Conspiración judeomasónica
    votos: 2    karma: 23
    vet vet
  9. #10   Y todo para un juego de pinball malo, malo.
    votos: 7    karma: 17
  10. #11   #10 Pero qué viciadas nos pegábamos en la academia cuando chapaban la red.
    votos: 3    karma: 28
  11. #12   #1 #2 Esto es gustará: www.suckless.org . #10 #11 Yo me llevaba el Nethack para Windows junto con MAME. Windows 98 no daba para mucho más.

    El Pinball windowsero molaba hasta que descubrí Future Pinball.
    votos: 1    karma: 24
     *   Ander_ Ander_
  12. #13   #6 Eso también lo hace Jeff Dean. Es más, la velocidad de luz solía ser de uno 60 km/h, hasta que Jeff Dean se pasó un fin de semana optimizando la Física. :troll:
    votos: 2    karma: 21
  13. #14   Hablando de pinballs el que molaba era el Extreme Pinball sobre todo el tablero rock.
    votos: 0    karma: 7
  14. #15   #7 He visto (y he tenido que tocar) código donde todas las variables, objetos,... eran temp1, temp2, temp3,... TODO!!!.
    Y otro donde en lugar de dar nombres lógicos, todo eran animales: perros, gatos, ratas,... Por lo menos tenía un método, y siempre los mismos animales correspondían a la misma clase. Curioso.
    votos: 4    karma: 39
  15. #16   #12 ¿Qué cojones es eso? 2860 líneas de código en un solo archivo. Es la selva.
    votos: 0    karma: 7
  16. #17   #6 #13 eso es de nenazas, los machos de verdad tiene la tecla «1», cuando no se pulsa es 0.
    votos: 6    karma: 55
  17. #18   #2 En ensamblador, como en cualquier otro lenguaje, se usan nombres descriptivos. Otra cosa es que seas un esquizofrénico :troll:
    votos: 0    karma: 13
     *   radioman radioman
  18. #19   #2

    Lee bien: subcontrata. compraron el juego y punto.

    No se, podian haber pedido otro pinball aunque fuera diferente, les habria costado 2 duros y podria haber sido en flash mismamente.
    votos: 0    karma: 10
    jrz jrz
  19. #21   Otro puntito a favor del software libre.
    votos: 11    karma: 3
  20. #22   #16 Y te parece mucho? no has visto nada... yo alguna vez he tenido que pelearme con un archivo en C de cerca de 100.000 líneas de código...
    votos: 1    karma: 17
  21. #23   #21 Qué tendrá que ver la complejidad del software con el tipo de licencia que utiliza???
    votos: 7    karma: 9
  22. #24   Recuerdo que sólo venía con Windows NT antes que con XP. Viejuno...uno soy.
    votos: 0    karma: 8
  23. #25   Oh ensamblador... cuanto te añoro...!!!
    votos: 1    karma: 19
  24. #26   Habrá desaparecido el pinball... pero el Windows 7 tiene el Mahjong. ¡Qué viciadas!
    votos: 0    karma: 10
  25. #27   Explicado en un dibujito:

    8.asset.soup.io/asset/2891/2824_646b.png

    Fuente: Abstruse Goose
    votos: 13    karma: 112
  26. #28   Gracias @pizarrin y @mikelx por vuestros negativos, ya me contareis por qué un día de estos.
    votos: 5    karma: -18
  27. #29   #16 Lo que tu llamas selva es, para muchos, nuestro hogar.
    La estructura a la hora de escribir el código y la homogeneidad del mismo son claves para un fichero tan largo. Parece que no era el caso del pinball.

    #23 Te sorprendería saber hasta que punto están relacionados (aunque en principio no tengan nada que ver). Raro, pero raro, es el código que leo bajo licencia privada que está bien estructurado, comentado...en una palabra: legible. Y por otro lado raro ha sido el código libre que he leido que no era legible.
    Programar soft libre o privado va mucho más allá de la licencia, por regla general (que me dicta mi experiencia con lo que no tiene porqué ser cierto) el desarrollador de soft libre suele ser mucho más consciente de la necesidad de que su código va a ser leido por personas ajenas a él y suele poner más empeño en los aspectos relacionados.
    votos: 6    karma: 64
     *   juanma1980 juanma1980
  28. #30   #2 Mejor que un comentario de código es un código legible y bien estructurado y siguiendo SOLID.
    Al fin y al cabo, cada vez que muta el código tienes que mutar los comentarios. Porque no hay mejor comentario que un buen nombre de función o de variable.
    votos: 3    karma: 33
  29. #31   #30 Me has hecho recordar un código que me tube que modificar: unas 250 lineas de código, sin tabulación alguna y con un solo comentario. Era algo así como: .moveNext //Muevo al siguiente
    Pa matarlo :-/
    votos: 0    karma: 10
  30. #32   #30 En mi opinión los comentarios deben ir al principio de una función para explicar su funcionalidad y en las "bizarradas" extrañas que, de vez en cuando, todos hemos tenido que hacer y que mejor apuntar la funcionalidad que perder un tiempo en entender lo que hace. El resto de comentarios suelen ser prescindibles.
    votos: 1    karma: -1
  31. #33   #29 Vamos, me estás contando que si mañana cualquier software con licencia libre, pasa a ser privativo, automáticamente se empieza a llenar de bugs porque sus programadores son unos ineptos??? Me parece que tu experiencia te engaña totalmente.

    Lo mismo podría decirte yo sobre la diferencia de seriedad en proyectos libres y privativos (Y bajo mi experiencia). Todos los proyectos libres en los que he participado, han acabado a medio hacer y abandonados, mientras que los privativos ni uno, claro, es que en uno hay dinero de por medio.

    Total, ponerse a justificar las cosas con tonterías, sale gratis.
    votos: 2    karma: -9
     *   --318263-- --318263--
  32. #34   #33 Compara la simpleza y calidad de OpenBSD contra la espiral de pesadilla que es NT y su API.
    votos: 3    karma: 39
  33. #35   Para #23. Todo. Si una licencia no añade el código fuente y permiso para modificarlo la única opción que queda es la ingeniería inversa, en esta misma noticia tenemos un buen ejemplo de lo que puede implicar todo ello. Y esto es un juego, imaginate en proyectos serios.

    Para #21. Quien te vote negativo lo hace por desconocimiento del tema. A los papás de esos votos negativos les recomiendo esta lectura : es.wikipedia.org/wiki/GNU_General_Public_License
    votos: 0    karma: 12
     *   frankiejcr frankiejcr
  34. #36   #34 Me estás comparando el código fuente de un SO abierto con la API Expuesta públicamente de otro?? Pero sin embargo tienes la cara dura de decir que el código de uno es mejor que el del otro, cuando solo has visto el de uno.

    #35 Pues nada, entonces espero que no trabajes en ninguna empresa que desarrolle software privativo, porque entonces, te convierte automáticamente en un desarrollador cutre, según tu mismo :-)
    votos: 1    karma: -3
     *   --318263-- --318263--
  35. #37   Las tres entradas de wikipedia relacionadas:
    es.wikipedia.org/wiki/Full_Tilt!_Pinball
    en.wikipedia.org/wiki/Cinematronics,_LLC (la empresa que lo desarrolló, extinta)
    es.wikipedia.org/wiki/Maxis (quien lo distribuyó).
    votos: 0    karma: 10
  36. #38   #36 Los propios programadores de Windows han reconocido no saber que hacían ni sus propias API. Por cierto, los de Wine han tenido que copiar bug por bug muchas API de Windows para funcionar programas.
    votos: 1    karma: 21
  37. #39   #38 Yo también te puedo decir proyectos de software libre que son un puñetero caos, si por casos, los que quieras!!!
    votos: 1    karma: 15
  38. #40   Para #36. No trabajo para ninguna empresa que desarrolle software privativo, y precisamente no lo hago por principios. Cada uno debe dignificar su profesión lo mejor que pueda.

    Para #41. No quiero ser el ídolo de nadie. Un saludo.
    votos: 3    karma: 23
     *   frankiejcr frankiejcr
  39. #41   #39 Dígame, señor masoca defensor de licencias propietarias. #40 Eres mi ídolo, ojalá pudiera hacer lo mismo.
    votos: 1    karma: 24
     *   Ander_ Ander_
  40. #42   #1 Si fué difícil de escribir, que sea difícil de leer :-P
    votos: 0    karma: 6
  41. #43   #40 Pues felicidades, que seas muy feliz con tu actividad tan altruista, me alegro muchísimo, de verdad. Pero otros, nos dedicamos al software privativo y vivimos de el, y no somos unos cutres.
    votos: 5    karma: 54
  42. #44   #40 Más que idolización es respeto.
    votos: 1    karma: 24
     *   Ander_ Ander_
  43. #45   Para #44. Goto #21.
    votos: 0    karma: 12
  44. #46   Si hubieran liberado el código del Pinball para Windows, ahora podría recompilarse facilmente contra WineLib y ejecutarse casi. en cualquier SO, incluído ReactOS.
    votos: 1    karma: 4
  45. #47   #32 Funciones como muy largas de 4 o 5 líneas. Ya verás como no hacen falta comentarios al inicio de ninguna de ellas.
    votos: 1    karma: 15
  46. #48   Yo jugué mucho con los simuladores de Propinball, en realidad el único videojuego que me ha gustado de verdad, ya que no soy de videojuegos. Acostumbrado a este nivel, que hasta puedes darle efectos a bola, el de windows nunca lo usé.

    Os aconsejo buscarlos. Aunque son viejunos, no se han quedado anticuados. No se han superado esos pinballs. Especialmente Timeshock!

    www.pro-pinball.com/wp-content/uploads/TS_00.jpg

    ¡Vaya, buscando en Google parece que vuelven para 2013!
    votos: 2    karma: 23
     *   Scooby Scooby
  47. #49   Desaparecio despues de tragarse la ultima bola. xD
    votos: 1    karma: 12
  48. #50   #48 Los tengo, y en mi opinion de calle le gano, pro pimball big race usa. tremendo :-D
    votos: 0    karma: 6
  49. #51   #50 Ese es muy bueno también. Pero de Timeshock! me enamoraron la estética de la tabla y la pedazo música guitarrera hortera tocada con músicos de estudio. Ambientazo con los altavoves a tope. :-D El más flojo es Fantastic Journey a pesar de ser el más avanzado, aunque que sea el más flojo no quita que siga siendo una pasada. Es que son todos muy buenos.

    The Web lo dejo fuera, se queda corto con los tres que le siguieron.
    votos: 0    karma: 9
     *   Scooby Scooby
  50. #52   #33 No. No te estoy contando eso y creo haberlo dejado claro al decir que en principio no hay ninguna relación directa.
    Lo que he dicho, y reafirmo, es que hay una gran diferencia a la hora de escribir código pensando que lo van a revisar y modificar ojos distintos a los tuyos y cuando se escribe código pensando en que "total, nadie va a leer esto". Y eso en los desarrollos de soft libre, lógicamente, se tiene más en cuenta que en los desarrollos "privados".
    Pero vamos, que no estoy descubriendo la pólvora: Un programador cualquiera escribe el código de formas muy diferentes si es algo "para él" que si es algo "para otros". Yo tengo scripts del curro por ahí que son una auténtica patata pero se usaron en un momento puntual para resolver algo muy puntual que necesitaba una respuesta rápida y tengo otros que son de uso diario que, lógicamente, tienen la sintaxis mucho más cuidada. Incluso en proyectos mucho más complejos que un script para algo puntual se mete auténtica mierda si se acaba el plazo, ya que el cliente en la vida va a poder auditarlo. Son cosas con las que cualquiera que desarrolle software se ha encontrado.

    Respecto a lo del desarrollo y la seriedad pasa 3/4 de lo mismo. No hay una relación directa pero, como bien dices, si que hay razones para que sea de un modo u otro. El desarrollo del kernel linux es algo jodidamente serio pero el desarrollo de una aplicación libre que haga streaming de música (por ejemplo, por poner algo) si que es posible que acabe abandonado y sin documentar. De la misma forma el desarrollo de Opera es muy serio y sin embargo empresas como Microsoft (por citar la empresa típica) cada año cancela algún que otro proyecto dejando con el culo al aire a los interesados.

    Elegir entre soft libre o privado va mucho más allá que elegir entre una licencia u otra, es que ni siquiera suelen seguir el mismo modelo de negocio unos y otros.

    p.d. Antes de decir lo de tonterías leete seriamente y sin mear fuera del texto lo que te están diciendo porque sino las tonterías las acabas diciendo tu mismo.

    p.p.d. Los proyectos de soft libre mueven muchisimo dinero. Solo en España, donde no está especialmente desarrollado, puedes encontrar un buen puñado de empresas viviendo de él.
    votos: 4    karma: 37
  51. #53   #33 en serio no te ha quedado ningun proyecto privado a medio hacer? joder que suerte! yo en 12 años en esto he visto de todo, proyectos millonarios que no se pagan, no salen nunca a produccion, sale la primera fase solo (que sola no vale para nada), lo que se entrega es basura pura, etc...En proyectos libres no tengo experiencia pero si me parece lógico que sean mas legibles (no mejores) que los proyectos privados.
    votos: 2    karma: 25
  52. #54   #15 el libro "Clean code" debería ser oobligatorio en cualquier titulación o estudios donde se dé algo de programación
    votos: 1    karma: 16
  53. #55   #27 #30 #31 count++; // Incrementamos el contador en 1.
    votos: 2    karma: 27
  54. #56   #55 ¡¡Y otra maravillosa hazaña del Capitán Obvio!!
    votos: 1    karma: 17
  55. #57   Para los que hablan de documentar y tal:

    El discípulo preguntó al Maestro: “Este es un programador que nunca diseña, documenta o prueba sus programas. Sin embargo, todos los que lo conocen lo consideran uno de los mejores programadores del mundo. ¿Por qué es esto?”

    El Maestro responde: “Ese programador ha alcanzado la maestría del Tao. Ha ido más allá de la necesidad de un diseño; no se enoja cuando el sistema se cae, pero acepta al universo sin preocupación. Ha ido más allá de la necesidad de documentación; no le importa si alguien más ve su código. Ha ido más allá de la necesidad de pruebas; cada uno de sus programas son perfectos en sí mismos, serenos y elegantes, su propósito es auto-evidente. Realmente, él ha penetrado en el misterio del Tao''.


    www.variablenotfound.com/2011/10/el-tao-de-la-programacion.html

    :troll: :troll:
    votos: 2    karma: 31
  56. #58   Oh! qué maravillosos años en los que me pasaba jugando a este Pinball y creo recordar que mi récord rondaba los 17 millones. xD
    votos: 0    karma: 8
  57. #59   ¡Con lo que molaba!
    votos: 1    karma: 19
  58. #60   #6 Bueno, tiene tres. El otro día le hice una foto a su teclado. :-D  media
    votos: 1    karma: 13
     *   f2105 f2105
  59. #61   #3 A eso me refiero: una compañía subcontratada funciona como un empleado. En este caso, un périmo desarrollador.
    votos: 1    karma: 18
  60. #62   Lo mejor del meneo han sido los comentarios.
    votos: 1    karma: 19
  61. #63   #40 creo que te has columpiado tela. Ahora resulta que los unicos buenos programadores son los que trabajan para en sofware libre. Y aparte claro, no tenemos principios... Lo tuyo es de psiquiatra
    votos: 1    karma: 1
  62. #64   #42 Además... Los auténticos programadores escriben comentarios: el código es obvio.
    votos: 0    karma: 6
  63. #65   #23 ¿Te has leído el artículo? (Tú y todos los que me votaron negativo el comentario #21)
    votos: 0    karma: 9
  64. #66   Para #63. Eso lo has afirmado tu, no yo. En #40 solo dejo entrever que cada uno debe y puede dignificar su profesión como mejor entienda, y de paso expongo qué camino personalmente he elegido en mi ámbito. No he pretendido ofender a nadie.
    votos: 1    karma: 21
     *   frankiejcr frankiejcr
  65. #67   Me ha hecho recordar mis 2 Palms y mi Hangspring: libro electrónico formato doc medio mega, creo que un ePub 15 veces menos. Ninguno tenis dibujos, ni leches, pura "letra fósforo" (aquellos cacharros tenían 2 Mb y otro 8, evidentemente .....)
    votos: 0    karma: 14
  66. #68   #46 Negativo por comentar sin leer la noticia
    votos: 1    karma: -1
  67. #69   Dios que pena era el mejor juego que tenía el windows. Además era muy adictivo. No entiendo que para un programador serio, con experiencia le parezca difícil ese código. Creo que simplemente no tenían el código y no hicieron nada por conseguirlo.
    votos: 0    karma: 6
  68. #70   #1 Muy interesante para cualquier programador, eso sí, diría que no le recomendaría a todo programador que haga eso. Es como decirle a cualquier pintor que te pinte la casa como si fuera la Capilla Sixtina.

    No pretendo ofender a nadie, no es una cuestión de ser mal programador o buen programador, si te pagan para hacer un trabajo bien hecho, pues haz un trabajo bien hecho. Si te pagan una hora, no hagas el trabajo equivalente a dos porque te estás regalando.

    #4 No me atrevía a decirlo, pero mi comentario también va por ahí, no me extrañaría que fueran empleados mal pagados los que hicieron este pinball. Que tampoco tiene porque ser así, pero no me extrañaría.

    Al fin y al cabo, el problema sigue siendo de microsoft por no ver lo que compraba.
    votos: 0    karma: 7
     *   Arth Arth
  69. #71   #7 Yo he visto siete tablas de html anidadas entre si.. sin verdadera necesidad. Jodido Dreamweaver
    votos: 0    karma: 8
  70. #72   #7 Me gustaría que vieras una aplicación que usan en mi trabajo, es sencillamente bestial: PHP4+PHP5, orientado a objetos que sólo funcionan con variables superglobales (sí, hablo de los objetos), usando Ajax falso (a base de miles de milllones de iframes, sin usar NI UNA puta vez componente alguno de Ajax). No usa patrón MVC ni patrón alguno, todo parece fruto del azar, hasta el diseño de la BBDD. Todos los campos de la BBDD (repito: TODOS) son Varchar y no usa primary keys. El núcleo es 100% sofware libre diseñado exclusivamente para IE6 con FrontPage 2003 usando librerías de pago (sin licencia) que se ejecuta en un Linux que tampoco es libre y del que tampoco hay una licencia conocida instalada. Para más inri, si cabe, resulta que TODOS los archivos de la aplicación (500.000 y subiendo cada día) se guardan en el directorio raíz sin usar carpetas...

    ¿Cuál es el veredicto de una cosa así por un profesional del tema? No te cortes, estoy deseando escucharlo :-D
    votos: 0    karma: 9
  71. #73   #47 Si bien eso puede hacer más legible el código, no es una buena práctica abusar de ello.

    Escribir un número de ingente de funciones para hacer cosas básicas es ineficiente computacionalmente. Por cada llamada a función que hagas en tu código, estás apilando la dirección de la función y sus parámetros, y eso es abusar de la memoria sin ser necesario. La memoria es lenta y costosa.

    Hay un término medio medio entre eficiencia y legibilidad.
    votos: 1    karma: 18
     *   vickop vickop
  72. #74   #73 Una temprana optimización es la muerte del software. Primero programamos bien y después vemos si va lento.
    c2.com/cgi/wiki?PrematureOptimization
    votos: 2    karma: 29
comentarios cerrados

menéame