Tecnología

Potencia vs Fluidez: ¿se han vuelto los programadores comodones?

·

Nos ponemos en situación. Cerrad los ojitos y viajad al pasado. 30 añitos solamente. Ni nos imaginábamos Internet, y éramos esclavos de los 8 bits. Los procesadores de aquellas primeras generaciones solían tener una frecuencia de reloj de 1 MHz. Repito. 1 MHz. Avancemos un poco. Abril de 1982. Sinclair Research presenta su ZX Spectrum, con un «potente» procesador Z80 a 3,5 MHz y 48 kB de memoria (aunque el primero tuvo en realidad 16 kB). No había multithreading, ni arquitecturas superescalares. Si una instrucción tardaba 5 ciclos en ejecutarse, eran 5 ciclos. Aquella máquina, que para los estándares actuales es ridícula, demostró algo prodigioso: que con 3,5 MHz de potencia y 48 «kas» se podían lograr juegos increíbles con una fluidez brutal.

Evidentemente el ZX Spectrum 48K tenía limitaciones importantes: su resolución (256×192 píxeles) y sus 4 bits de color (una paleta con 7 colores y dos brillos para cada color, excepto el negro) ofrecían todo un desafío a los desarrolladores de videojuegos, que no obstante alegraron la vida a millones de niños. Yo entre ellos, aunque nunca tuve uno, porque pude presumir de tener un C64, mucho mejor :). Aquellos programadores se sacaban rutinas de la chistera que permitían hacer cosas asombrosas en esa «castaña» de procesador y con esa «castaña» de memoria. Los ejemplos son casi inacabables.

Y seguimos avanzando: 10 años más. Estamos en la época dorada de mi adorado Amiga 1200, recién lanzado y superior en arquitectura y sobre todo en prestaciones de su sistema operativo (con multitarea real) a cualquier PC de la época. Y desde luego, a cualquier Mac, salvo en apartados muy, muy específicos -que alguno me intente discutir esto-. Los juegos para aquella máquina marcaron una época. Y de nuevo, todo fue gracias a aquellos programadores que sacaron todo el jugo a un procesador y a unos chips gráficos y de sonido que tenían muchas limitaciones. Más ejemplos inacabables.

Sigamos viajando en el tiempo.

Otro empujón hacia delante. Estamos en 2012. Ya podéis abrir los ojos. Tenemos micros quad-core con frecuencias de reloj de más de 3 GHz, configuraciones en las que lo normal es contar con 6 u 8 Gbytes de memoria RAM, GPUs que superan en potencia bruta a esas CPUs en varios órdenes de magnitud y sistemas de almacenamiento que  nos ofrecen velocidades de transferencia de 400 o 500 Mbytes por segundo.

Pero lo más grave no es eso. Esos procesadores quad-core, esas GPUs y esas memorias de alta gama están disponibles en nuestros flipantes smartphones y nuestros molones tablets. Que por supuesto, hacen cosas muy chulas y que molan un montón para presumir delante de los amigotes. El efecto zoom del iPad cuando uno entra o sale de carpetas de fotos y luego hace zoom en ellas, la fluidez del desplazamiento de las pantallas con iconos o con texto e imágenes, e incluso lo «follao» que van el Call of Duty o el Need for Speed Shift. Cómo mola. Y qué rápido va todo, ¿eh?

Mi pregunta es: ¿cómo coño no van a ir rápido con esos maquinones detrás? ¿Por qué nos asombramos tanto de las cosas que puede hacer un iPad o un Samsung Galaxy Nexus?

Precisamente lo que no es normal es que con esas configuraciones hardware haya muchas cosas que vayan tiradas. Abrir varias pestañas en un navegador o tener varias aplicaciones abiertas en un móvil es sinónimo de problemas en la mayoría de los casos, y es algo que por muchas flores que se le puedan echar a Android o a iOS no acabo de entender.

Porque si hay una cosa clara en el segmento tecnológico hoy en día es esta: que los desarrollos software están muy por detrás del hardware actual. Mirad la carga de vuestros procesadores en prácticamente cualquier momento, y preguntaos porqué seguimos buscando micros y gráficas más potentes, cuando la mayor parte del tiempo las vamos a tener infrautilizadas, sobre todo en informática de sobremesa.

¿Se han vuelto comodones los desarrolladores? ¿Se dirán a sí mismos aquello de «bueno, podría intentar que fuera más eficiente, pero con subir los requisitos ya me justificaré»? Seguro que hay de todo, pero esta reflexión sobre la que ya comentaba algo hace tiempo y que también aparecía en posts muy buenos como este no deja de ser cada vez más una cuestión que genera muchas, muchas, muchas dudas.


Incognichollos

Esta es una selección con las mejores ofertas tecnológicas actualizadas casi diariamente, como expliqué aquí. Aunque estés en un post «antiguo» las ofertas son de última hora, los Incognichollos los actualizo aparte. También puedes seguir los Incognichollos en Twitter o en el nuevo canal de Telegram 🙂 . ¡Aprovecha, que no suelen durar mucho tiempo!

  • Samsung UE65RU7025: una Smart TV 4K UHD enorme de 65 pulgadas con Ultra Dimming, HDR10+, One Remote Control, además de sonido Dolby Digital Plus con altavoces de 20W. Está a 498,49 euros en Amazon (baja de 694,81). Alucinante.
  • Reacondicionados Amazon con un 20% de descuento adicional: los productos de segunda mano en muy buen estado y garantizados por Amazon. Además ahora hay una selección con un 20% extra de descuento al tramitar la compra. Hay varios chollos estupendos, esta es la selección de Amazon.
  • PS4 Pro + 20 euros tarjeta prepago: la consola más potente de Sony en formato reacondicionado (garantizado por Amazon) con el nuevo chasis G, en estado «Muy bueno» y con esa tarjeta regalo. Está a en Amazon por 291,56 euros.
  • Monitor Philips 223V5LSB2: no esperéis nada especial de este monitor, pero es que atentos, diagonal de 21,5 pulgadas, Full HD (1.920×1080) y conexión VGA, 5 ms de tiempo de respuesta y un precio de risa, está a 59,90 euros en Amazon (baja de 79,90).
  • Auriculares Edifier H840: muy buenas opiniones para estos auriculares de diadema con cable, están a 10,26 euros en Amazon (bajan de 40).
  • Trust Gaming GTX 252: un micrófono profesional con soporte de brazo perfecto para adaptarlo a podcasts o emisiones en directo. Patrón de grabación cardioide, conexión USB, está a 64,90 euros en Amazon (baja de 115,86).
  • Huawei P8 Lite: un reacondicionado garantizado por Amazon. 5 pulgadas, Kirin 620, 2 GB de RAM, 16 GB de capacidad, cámara 13 MP, está a 62,88 euros en Amazon. ¡¡Hay mucho más productos reacondicionados aquí!!
  • Chuwi HeroBook: un portátil muy modesto y muy barato: 14,1» (1366×768), Atom X5-E8000 (quad-core), 4 GB de RAM, 64 GB eMMC de capacidad (con M.2), Windows 10, teclado en inglés, salida Micro HDMI, 2xUSB3.0. Está a 161 euros en Banggood con el código BGCWHS1
  • Lámpara Xiaomi Mi-Motion: una lámpara con sensor de movimiento que se activa gracias al sensor que detecta tu presencia y permite ahorrar electricidad. Iluminación suave y eficiente, está a 6,99 euros en Amazon (baja de 9,99).
  • Xiaomi Mi 9T: 6,39? AMOLED, Snapdragon 730, 6 GB de RAM, 64 GB de capacidad, cámara triple (48+8+13), cámara frontal retráctil (20 MP), lector de huella bajo pantalla, 4000 mAh. Está a 274 euros en Amazon (baja de 329).
  • SSD Externo Sandisk Portable 1 TB: una unidad SSD de 2,5 pulgadas compacta, resistente al agua y al polvo, con 1 TB de capacidad y transferencias de 550 MB/s. Está a 157,25 euros en Amazon (baja de 294,99).
  • Acer VX5-591G: un portátil gaming curioso con pantalla de 15,6 pulgadas FullHD, un Intel Core i5-7300HQ, 8 GB de RAM, 512 GB de SSD (muy bien!), y una GTX 1050 de 4 GB para jugar, arranque Linux, sin Windows, teclado en español. Está a 599 euros en Amazon.
  • Motorola Moto G7 Play: el modelo básico de 5,7?, Snapdragon 632, 2 GB de RAM, 32 GB de capacidad, Dual SIM, cámara de 13 MP, 3.000 mAh, está a solo 99 euros en Amazon. Chollo como teléfono básico, muy bien para niños.
  • Xiaomi Mijia Walkie-Talkie 1S: modelo profesional de Xiaomi con diseño ligero y delgado, potencia de transmisión de 3 W, hasta 5 km de alcance, incluye radio FM, 5 días de tiempo de espera. integra GPS y Bluetooth. Está a 38,8 euros en Banggood.
  • Hori Split Pad Pro: un mando para la Nintendo Switch que cuenta con la precisión y comodidad del Pro Controller en modo portátil. Botones traseros programables, función turbo con 3 ajustes. Está a 42,95 euros en Amazon (baja de 49,99).
  • MSI Modern 14: un portátil de 14 pulgadas FullHD con un Core i5-10210U, 8 GB de RAM, 512 GB de SSD, una GeForce MX250, sin SO ( (licencia de Windows 10 está a 2,40 euros en eBay con código PARATODO5). Teclado en español, está a 749,99 euros en Amazon. El mejor portátil del día y del mes.
  • Apple iPad 10,2 pulgadas (2019): la tableta de Apple con el chip A10 Fusion, cámara trasera de 8 MP, iPadOS, WiFi5, Facetime HD, soporta teclado y lápiz, está a 272,65 euros en eBay con el código PARATODO5.
  • WD MyBook 6 TB: un disco duro externo de 3,5 pulgadas con conexión USB 3.0 y ua capacidad estupenda de 6 TB, está a 116,33 euros en Amazon (baja de 229,99).
  • OnePlus 7 Pro: 6,67? a 90 Hz gloriosos, Snapdragon 855, 6 GB de RAM, 128 GB capacidad, cámara triple 48+16+8 MP, cámara frontal 16 MP retráctil, lector bajo pantalla, 4.000 mAh, espectacular a 478,80 euros en eBay con el código PARATODO5.
  • Licencia Windows 10 Pro 32/64 bits: una licencia para poder activar Windows 10 Pro, está a 2,4 euros en eBay con el código PARATODO5.
  • Xiaomi Mi 9T Pro: Snapdragon 855. 6,39 pulgadas, 6 GB de RAM, 128 GB capacidad, cámara de 48+13+8 MP, 4000 mAh, NFC, lector de huella en pantalla. Está a 369 euros en Amazon (baja de 449).
  • Xbox One X: la consola más potente de Microsoft con soporte 4K HDR, 1 TB de capacidad, un mando inalámbrico, unidad óptica, está a 304,90 euros en Amazon.
  • Drone Star Wars Propel Speeder Bike: un dron muy gracioso porque parece el speeder de una de las pelis, edición especial incluso con caja perfecta, está a 39,99 euros en Amazon (baja de 80).
  • Asus R521FA-EJ545: un portátil de 15,6 pulgadas FullHD con un Core i7-8565U, 8 GB de RAM, 512 GB de SSD, diseño casi sin marcos, teclado en español, sin sistema operativo, peso de 1,8 kg, está a 549,99 euros en Amazon.
  • ASUS ZenBook 14 UX433FA: un modelo más avanzado de 14 pulgadas Full HD con marcos aún más finos, Core i7-8565U, 8 GB de RAM, 256 GB de SSD, 1,4 kg de peso, touchpad que dobla como teclado numérico, está a 849 euros en Amazon (en PcComp 999).
  • Lápices AmazonBasics: pack de nada menos que 150 lápices 2 HB de madera, afilados, y con goma de borrar. A dibujar y escribir sin fin. Están a 15,09 euros en Amazon.
  • Apple iPhone XR: el modelo con pantalla Liquid Retina de 6,1 pulgadas, CPU Apple A12 Bionic, Face ID, 3 GB de RAM, 64 GB de capacidad, cámara de 12 Mpíxeles, está a 569 euros en AliExpress Plaza (envío desde España) con el código ALIAHORRA70 (en Amazon sale por 669euros).
  • Amazon Echo (3ª Gen): nuevo altavoz inteligente de Amazon con Alexa, sonido mejorado, está a 79,99 euros en Amazon (baja de 99,99).
  • Samsung Galaxy S10: el modelo G9730 Dual SIM con el Exynos 9820, 8 GB de RAM, 128 GB de capacidad ampliables, cámara triple (16+12+12), 3.400 mAh, lector de huella bajo pantalla. Estupendo por 613,61 euros en Amazon (baja de 909).
  • Amazfit Verge Lite Smartwatch: un reloj cuantificador con pantalla AMOLED de 1,3?, monitoriza 7 deportes distintos, GPS/GLONASS, sensor de ritmo cardiaco, IP68, batería de 390 mAh, hasta 20 días de autonomía. Está a 79 euros en Amazon (120 en PcComp).
  • Cable 3 en 1 Multicarga: de USB a USB-C, Lightning y MicroUSB para poder elegir el extremo que más os guste y tener siempre un cable preparado para cargar todo tipo de móviles. Está a 4,39 euros en Amazon (baja de 7).
  • Xiaomi Redmibook Ryzen Edition: atentos a este portátil de 14 pulgadas Full HD con un AMD Ryzen 7 3700U, 16 GB de RAM (uauh), 512 GB de SSD (muy bien), una GPU Radeon Vega 10 (mejor que la MX 250), 18 mm de grosor, 1,5 kg de peso, 2 x USB 3.0, 1 x USB 2.0, HDMI (pero no USB-C, lástima), batería de 46 W, Windows 10 y teclado retroiluminado en inglés. Está a 605 euros en Banggood con el código BGXMR7W.
  • Mini Proyector LED Excelvan: 4500 lúmenes, diagonales de hasta 200 pulgadas, resolución nativa de 1.280 x 768 (pero escala a 1080p), VGA, 2 x USB, AV, HDMI, salida de audio 3,5 mm, mando a distancia, altavoz integrado. Está a 69,99 euros en Amazon (baja de 169,99 euros, descuento al tramitar el pedido).
  • Xiaomi Redmi Note 8T: 6,3?, Snapdragon 665, 4 GB de RAM, 64 GB de capacidad, cámara cuádruple (48+8+2+2), 4.000 mAh, lector trasero, buena opción recién salida del horno. Está a 163,05 euros en Amazon (baja de 200).
  • Volante Hori Apex inalámbrico (PS4, PC): un volante para juegos de conducción, licencia oficial de Sony, se conecta vía Bluetooth, función de vibración, compatible con PS4 y PC. Está a 99,95 euros en Amazon (baja de 129,99).
  • Smartwatch Fossil 4ª gen: con correa de silicona, caja de 43 mm, GPS, resistencia al agua (sumergible, 3 ATM), Wear OS, notificaciones, miniaplicaciones, monitorización del ritmo cardiaco y de diversas actividades físicas. Está a 106 euros en Amazon Francia, envío incluido.
  • Repetidor WiFi Victure 300 Mbps: perfecto para ampliar la cobertura de tu red WiFi, banda de 2,4 GHz, compatible con WPS, puerto USB y RJ45 Ethernet, está a 11,99 euros en Amazon con el código VNAC7C56 (baja de 20).
  • Xiaomi Mi Note 10 Pro: 6,47?, Snapdragon 730G, 8 GB RAM, 26 GB de capacidad, cámara penta 108+20+12+5+macro, NFC, lector de huella en pantalla, minijack, 5.260 mAh, está a 496 euros en GearBest con el código GBNT10PRO1.
  • Unidad SSD Sabrent 512 GB: en formato M.2 NVMe 2280, espectacular con esa capacidad de 512 GB y con un precio de 79,98 euros en Amazon (baja de 102).
  • Pendrive Verbatim 64 GB: llave de memoria USB 3.0 con 64 GB por un precio estupendo, 7,99 euros en Amazon.
  • Lenovo Legion Y540: un portátil gaming fantástico. 15,6? Full HD, Core i7-9750H, 16 GB de RAM, 256 GB SSD, 1 TB HDD, una GTX 1650, teclado retroiluminado en español, sin Windows. Está a 949 euros en Amazon (baja de 1.199).
  • Apple Watch Series 3: el reloj inteligente de Apple de hace un par de años sigue siendo gran opción, integra GPS, caja de 42 mm, color gris espacial, correa deportiva, chip S4 SiP, sensor de frecuencia cardiaca. Está a 259 euros en Amazon.
  • Xiaomi Mi A3: pantalla de 6,01?, Snapdragon 665, 4 GB de RAM, 64 GB de capacidad, cámara triple (48+8+2 MP), Android One (puro), lector de huella bajo pantalla, sin NFC, estupendo a 173 euros en Amazon.
  • MSI GF63 Thin 9SC: un portátil gamer bastante majo de 15,6? Full HD con un Core i7-9750H, 16 GB de RAM (muy bien), 512 GB de SSD (mola), una GeForce GTX 1650 Max-Q de 4 GB, sin sistema operativo, teclado español. Está a 898 euros en Amazon (baja de 1.149).
  • Chuwi UBook Pro: tipo Surface Pro pero en modesto, con un Intel Celeron N4100, 8 GB de RAM, 256 GB de SSD, pantalla de 12,3 pulgadas (1920×1280), lápiz con 4096 niveles de presión, 760 g de peso. Está a 284 euros en Banggood con el código BG33aadd
  • ASUS TUF Gaming FX505DV: un portátil gaming con pantalla de 15,6? Full HD, Ryzen 7 3750H, 16 GB de RAM, 512 GB SSD, GeForce RTX 2060 (uauh), sin SO, teclado retroiluminado en español. En eBay está a 999 euros, rebaja simpática.
  • HP Omen X Mindframe: unos auriculares distintos a todo lo que conocíais: tienen refrigeración para vuestras orejitas ? Además de iluminación RGB, sonido envolvente 7.1 virtual y cable con conector USB. Están a 99,99 euros en Amazon (bajan de 199,99).
  • Lenovo Ideapad 520-15IKB: un portátil de 15,6 » Full HD, Core i5-8250U, 8 GB de RAM, 1 TB de HDD, una GeForce MX150, Windows 10, teclado español y lector de huella, está a 549,99 euros en Amazon (baja de 699).
  • Lenovo Ideapad C340: un portátil convertible con pantalla de 14 pulgadas Full HD, un recién estrenado Core i7-1051U, 8 GB de RAM, 512 GB de SSD (bien), lector de huella, Windows 10 y teclado en español por 899,99 euros en Amazon
  • Xiaomi Redmi Note 8: 6,53 pulgadas, Snapdragon 665, 4 GB de RAM, 64 GB de capacidad, cámara cuádruple (48+8+2+2) y 4.000 mAh de batería. En Amazon a 157,99 euros.

¿Quieres recibir un correo de aviso cuando publique nuevas entradas?

Standard

11 comentarios en “Potencia vs Fluidez: ¿se han vuelto los programadores comodones?

  1. Alex dice:

    Muy interesante Javi. Te voy a hacer una reflexión. Intenta que un programa cualquiera en Windows se ejecute con un uso de CPU del 70%. Haz lo propio en un UNIX. Seguro que notas la mejora, pero sigue siendo ineficiente la manera en que los sistemas operativos adjudican los recursos. Un sistema no debería verse afectado en el rendimiento de la CPU si esta no alcanza el 100%, pero eso es solo en teoría. El sistema operativo emplea muchos ciclos en realizar los cambios de contexto y estos se multiplican con cada grado de paralelismo de las tareas. Con los procesadores multicore hemos multiplicado las UAL, incluso los registros… pero solo hay un bus para acceder a la memoria o a otros recursos externos y por el que compiten los cores. Con las memorias modernas de acceso multipuerta algo se mejoró en el grado de paralelismo pero el cuello de botella sigue estando ahí.

    Por que si no los servidores se basan en varios sockets? Porque pueden multiplicar los buses, los accesos a memoria si cada socket controla sus módulos de memoria. Aunque estén todos conectados y compartidos, cuanto mejor se gestione desde el sistema operativo donde se alojan los programas físicamente en memoria y que socket los ejecuta, mejor aprovechamos el hardware.

    El problema es que los programadores rara vez piensan en los demás programas, solo en el suyo. Y algunos sistemas operativos no ponen condiciones a los programas para ejecutarse en entornos multitarea, así que muchas veces no es problema del programa que va lento sino de que los recursos que necesita los esta ocupando otro. Y en un móvil esto es importante porque normalmente solo tenemos una aplicación en modo interactivo y el resto en segundo plano. Y queremos que hagan cosas como las hacen los PCs sin que sean la mitad de potentes que son estos.

  2. lc dice:

    Hoy va de historietas….
    Lo primero que hay que tener cuidado es con los flashback sobre articulos tecnologicos. A mi me ha pasado tres veces. Soy de spectrum y de este pase a pc (amstrad 1640), siempre babeando por el comodores 64, el comodore Amiga 500 de algunas amistades, con su motorola con arquitectura ¿Harward?, con su procesadores especializados y los apple… Pasa el tiempo y tengo mi pc con vga, se me presenta la oportunidad de comprar un maravilloso amiga 500 de segunda mano, lo compro y ¡opssss!, ¿que paso aqui?, es verdad que sigue moviendo los graficos como un diablo, pero esto ya no es tan maravilloso como yo recordaba, no hay tantos colores en movimiento, sencillamente mi pc moderno era un buen trasto pero igual que los otros que existian, no habia nada en pcs que significara un salto bestial frente al mio, bueno si, las sgi y tal, pero eso era inalcanzable. Pasa el tiempo, tengo mi amd 1800 con mi nvidia fx5200, se me presenta la oportunidad de adquirir una sgi octane, con su risc (175 mhz) y su supergraficos opengl, y ¿que paso?, pues si, la maquina es sorprendente, que sus buses, que en realidad son switch son una maravilla, que su opengl es sorprendente, pero que el pc se la lleva de calle, eso si la sgi se relentiza pero suavemente, sin tirones, despues compre un 400 mhz y al final una octane 2 con graficos v6, solo por capricho, pero no, las maquinas antiguas no son ninguna maravilla, ¿que hacen cosas increibles?, no, hacen lo que corresponde a sus caracteristicas y las de hoy hacen lo que corresponde a sus caracteristicas. Para acabar hace un par de años enrede con un apple LC (lc, como yo 🙂 y con un mackintosh de los de pantalla de ¿7? pulgadas, no pretendia comparar nada, pero vamos el system ¿6.5? era como de juquete, vamos que el windows 3.1 hacia mas, peor hecho, eso si, pero mas. Asi que cuidadito con los flashback.
    En cuanto a los programadores, te referiras a los de sistemas operativos, porque los de aplicaciones no se que van a hacer, si no se puede acceder al hard, e incluso los de sistemas puede que no puedan hacer mas si les dan las entradas y las salidas, no mas, los cambios de contextos, fallos de pagina y demas esta todo en el hard. En los tiempos de la vga y msdos se podia hacer algunas cosillas, ¿modo x? o algun ciclo que te ahorrabas en ensamblador por hacer alguna genialidad, pero hoy, «na de na», Ademas en el tiempo que piensas la genialidad te sacan un procesador generico o un procesador de grafico que te saca un 500% a tu genialidad, que no, que esto no es como el spectrum.
    De todos modos lo que hace un pc de hoy en dia es impresionante y un ipad 2 mas, verdad que hay algun cuello de botella, yo diria que el principal, el disco duro, porque como la memoria de tu aplicacion puede estar paginada en un fichero en memoria porque tienes muuuuchas cosas funcionando en el ordenador o porque hace tiempo que tu aplicacion esta en reposo, porque todo el mundo usa una base de datos en disco duro para guardar cualquier chorrada, eso de las estructuras de datos casi no se lleva,…. en fin, que no, que nada es como antes en programacion, asi que comparar es imposible.
    No sigo que aburro…

  3. nahiko dice:

    No sé si he buscado bien, pero creo que el Z80 (microprocesador del Spectrum) contaba con 252 instrucciones nativas (en ensamblador, de las que se ejectuan por hardware.
    El basic del spectrum no sé con cuántas contaba, pero creo que no más de 100.

    Un x86, cualquiera cuenta con sus intrucciones nativas (no sé exactamente cuántas son ahora mismo, pero unas cuantas) si pasamos a los 386 DX y 486 DX y sucesivos, contaban con coprocesador matemáticos, el cual añadía otro juego de instrucciones más para operaciones de coma flotante, en los 386 y 486 SX se podría meter un 387 o 487 (que eran los copros físicos, los DX estaban integrados en el mismo procesador)
    El pentium no aportó mucho en este ámbito hasta que aparecieron los MMX, que implementaban por hardware las 57 (creo recordar) nuevas instrucciones multimedia, (solo una de las MMX podía sustituir a más de 200 de las X86 estándar.
    AMD sacó las 3DNow!, luego vinieron SSE, SSE2, SSE3, SSE4 y SSE5. Cada cual con sus más y sus menos, las SSE5 creo que no se llegan a usar, y se propone en su lugar las AVX o algo así, es un pedazo de lío.
    SOLO para el procesador, cuántas instrucciones nativas tenemos? Un cojón.
    Pasamos a las gráficas? Pues otro tanto de instrucciones.

    Para aprovechar bien todo este hardware tan potente, necesitamos muuuuuchas instrucciones no nativas que hagan las llamadas pertinentes, unos compiladores muy bien hechos, muchas librerías intermedias para ir haciendo el acceso al hardware más sencillo para un programador que tiene que estar también preocupándose por la lógica del juego, la limpieza del código, el ahorro de memoria y sus leaks, la herencia, el polimorfismo, y un largo etc de cosas. Al final, emplear a fondo un ordenador y sacarle todo el jugo es TERRIBLEMENTE complicado. Y hay muuuuchas capas de por medio para facilitar las cosas (sería completamente imposible currarse un juego decente programando en ensamblador!!) que pueden ir metiendo lags.

    Hacer un juego en spectrum es terriblemente sencillo, apenas tiene 4 cosas en las que nos tenemos que fijar, hay un solo intérprete entre el basic en el que lo programamos y el ensamblador que se ejecuta en el microprocesador, es muy difícil cagarla en algún sitio y no darnos cuenta o que poco a poco se vaya llenando la memoria y vaya bajando el rendimiento, por ejemplo.

    Por otro lado, cuando los gráficos eran muy malos, una pequeña mejora, se notaba un cojón. Hoy en día (y ya desde hace bastantes años) una mejora apenas se nota.
    Os propongo una prueba:
    Cogéis un juego, por ejemplo el PES, os lo instaláis, configuración gráfica, filtro anisotrópico desactivado. Jugáis un betis – valencia (por no decir un madrid – barça :p) y sacáis un pantallazo.
    Pegáis el pantallazo en un mspaint.
    Ahora volvéis a entrar en el juego, configuración y activáis el filtrado anisotrópico. Jugáis un Depor – Zaragoza. Pantallazo parecido al anterior (os recomiendo en un corner, para que tengáis más o menos lo mismo.

    Habéis notado diferencia gráfica entre poner el filtrado anisotrópico y no ponerlo? A que no!!!
    Ahora mirád ambos pantallazos, ya verás como hay MUCHA diferencia. Fijáos en la hierba.

    Luego por otro lado, efectivamente hay compañías que tienen los juegos vendidos antes incluso de programarlos, y para no perder pasta, sacan una versión del juego al año (léase NFS) les da igual la mierda que hagan, pero lo tienen que sacar en un año, por lo tanto, no se preocupan mucho por optimizar, esto también es un gran problema 🙁

    S2!!

  4. aRCaNGeL dice:

    Buenassss, creo que todos habéis dado en el clavo. Fundamentalmente creo que no es que los programadores se hayan vuelto vagos, sino que fundamentalmente la optimización de código ha dejado de ser una prioridad desde hace unos años (de hecho, los que llevamos unos años estudiando la carrera por paquetes, nos hemos dado cuenta como al prinpipio la fase de optimización de código era una de las más importantes en el desarrollo de software y ahora ya no lo es). Como indicaba, habéis dado en el clavo ya que considero que este cambio ha sido debido a:
    1.- El aumento de capacidades hardware ha sido tan rápido que un software mal optimizado, en poco tiempo mejoraba por sí solo simplemente esperando a Intel y AMD, por ejemplo.
    2.- La avaricia de la industria hace que los desarrollos duren un peo, por lo tanto la fase de optimización de código, como tantas otras se acorte drásticamente y dependas de auténticos maquinones para que vaya como debe (aquí tengo que romper una lanza en favor de Blizzard que lleva con el desarrollo de Diablo 3 la hueva de años. Esperemos que no defraude porque ha tenido tiempo de sobra para sacar un producto acojonante).
    3.- En cuanto a los Sistemas Operativos, creo que no debería ser una excusa. Recuerdo en la época del MS-DOS, con su limitación de 640 kb, cómo los programadores se buscaron el modo protegido (con el famoso dos4gw.exe) para quitarse ese lastre y permitieron juegos como DOOM (punto de inflexión en la programación de videojuegos sin ninguna duda).

    En definitiva, no creo que los programadores se hayan vuelto vagos, sino que las circunstancias les han empujado a olvidar la optimización de código….

    P.D.: probablemente alguno me pondrá a parir. No soy programador así que, sed buenos conmigo… ;)))

  5. Kamajii dice:

    Mi verdad es que programar para un determinado hard, en un determinado lenguaje (compilado, por supuesto) hoy en día me cae tan lejos, €¦ que como programador lo único que pretendo es no «poner» muchas estupidedes en mi código.
    Hasta donde hago yo, no se el resto de la parroqia, programo con .net 3/4 (VB/C#), contra una JVM o con un lenguaje interpretado de por medio (PHP/ASP) pero el hard no lo «huelo» ni de lejos. Suma mis defectos programando a los probables defectos de las n-capas de software que tengo debajo de mis programas,€¦ ya te puedes imaginar «los milagos» que hace el hardware: aveces incluso hace que mis programas parezcan útiles 😉

  6. A mi me lo dejó muy clarito un antiguo jefe, hace 15 años: Es mucho más barato y sencillo comprar máquinas más potentes que asumir el coste de desarrollar software más eficiente.

    Me jode, pero por lo que he visto con el paso de los años, no debe ser el único que piensa así.

    Tamos vendíos !

  7. nadie dice:

    No entiendo por qué se ha borrado el comentario que hice con un enlace en el que Gallir explicaba perfectamente los quebraderos de cabeza que tienen los ingenieros de Android y de IOX para hacer funcionar correctamente esos cacharros que, según tu teoría, están desperdiciados por el malhacer de los programadores.

    Pensé que era una lectura interesante. Sobretodo para el que se hace las preguntas que tú planteas aquí.
    Creo que la próxima vez me lo voy a pensar dos veces antes de escribir por aquí.

Comentarios cerrados