Desencantado con el Software

Avatar de Usuario
sabreman
Mensajes: 93
Registrado: 09 Ene 2011 23:20
Ubicación: Barcelona
Agradecido : 26 veces
Agradecimiento recibido: 11 veces

Desencantado con el Software

Mensajepor sabreman » 30 Sep 2018 23:42

"Desencantado con el Software" es el título de un artículo del blog de un programador que he leído recientemente y con el que me he sentido muy identificado (sin ser yo programador profesional, sólo un amateur de medio pelo). Está también comentado en OSNews que es donde lo descubrí.

http://tonsky.me/blog/disenchantment/es/

Lo comparto porque me parece que es algo muy de viejuno eso de la eficiencia y optimización del software, que "antes" con pocos recursos debías exprimir las máquinas hasta el límite para conseguir cosas asombrosas, y ahora hay capas y capas y trabajas muy arriba, y si no te llega, tiras de hardware.
Pero vamos, que lo veo así desde mi perspectiva amateur, que ni soy programador ni me dedico a ello.

¿Qué opináis los programadores del foro?


Saludos,

Avatar de Usuario
modok
Mensajes: 100
Registrado: 17 Dic 2017 23:30
Agradecido : 35 veces
Agradecimiento recibido: 36 veces

Re: Desencantado con el Software

Mensajepor modok » 01 Oct 2018 02:10

Yo apenas he programado un poquito, pero me he reido mucho con el articulo, esta muy bien escrito, gracias por compartirlo! -grin

BlackHole
Mensajes: 1669
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 29 veces
Agradecimiento recibido: 523 veces

Re: Desencantado con el Software

Mensajepor BlackHole » 01 Oct 2018 03:11

Yo no soy programador, pero el artículo es muy ilustrativo (se ha dejado algún cacho de una traducción al italiano, pero bueno) del peligroso caos en el que nos movemos en el mundo del software. Cuanto más avanzamos en el hardware y más años pasan en el tiempo, más hinchado está el software y más lento funciona todo. Hasta que pasa lo que dice el artículo: que hay tantas mantas encima de la mierda, que nos quedamos con la mierda porque ya no sabemos quitar las mantas.

Empieza el texto con una paradoja, que me hace preguntarme dónde ha sido escrito originalmente. Dice que "el tiempo del programador es caro"... pues en España lo dudo mucho. Generalmente en el sector de las Tecnologías de la Información, los salarios actuales en 2018 son un 33% más bajos que en 2007 justo antes de la crisis. No solo no hemos corregido el 19% de inflación, sino que perdemos el 19 + 33 = 52% de poder adquisitivo respecto a muchas otras profesiones. Eso no ha pasado en la IT de otros países, ni en Europa ni en Estados Unidos, Canadá o Australia.

Estoy viendo ofertas de trabajo que piden genios con poderes mágicos y pagan 18000 € anuales a lo sumo. Eso cuando no existen "¿empresas?" que no se cortan un pelo en ofrecer 12000 euros brutos anuales por un puesto de turnos 24/7, cuando el conserje de mi edificio que apenas sabe escribir gana mucho más. ¿Qué pasa? ¿Que tenemos que competir con India y China, no? Hasta en Corea del Sur, que en los 2 últimos años nos ha superado 2 puestos en el ránking GDP global, empiezan a tener sueldos medios de 2000 dólares mensuales.

Avatar de Usuario
explorer
Mensajes: 695
Registrado: 10 Ene 2016 18:43
Ubicación: Valladolid, España
Agradecido : 24 veces
Agradecimiento recibido: 680 veces
Contactar:

Re: Desencantado con el Software

Mensajepor explorer » 01 Oct 2018 03:12

Sobre el desencanto de los programadores, es algo que he leído bastante, en los últimos años, además de mi propia experiencia, así que puedo hablar largo y tendido.

En realidad, hay varios desencantos:
  • Como es el caso del artículo que enlazas, referido a la eficiencia del software actual, lento, sobre un hardware tan rápido. De esto podemos hablar lo que queráis, pero a las empresas no les interesa que le dediques seis horas a optimizar un código. Lo que quieren es que lo resuelvas en media hora. Solo cuando venga el cliente y se queje de que "esto va lento", entonces, "quizás", "quizás"... se optimice. Pero solo un poquito, ¿eh?
  • Otro tema son los lenguajes de ordenador. Aunque no llega a 20 los más utilizados, existen varios miles, y un programador debe estar preparado para aprender cualquiera de ellos lo más rápido posible si le encargan mantener código heredado. No pararás de aprender cosas nuevas. Muy bien si eres joven. No tanto cuanto mayor te haces.
  • Otro tema, peliagudo, es la actual forma de desarrollo. Fundamentalmente, no ha cambiado en 40 años: los programadores se sientan delante de una pantalla, arrancan un editor de textos y comienzan a escribir -con el teclado- una serie de líneas en un lenguaje de ordenador. Todo esto es una mierda, comparado con lo que hicieron los pioneros en los años 70, donde fueron capaces de vislumbrar una idea muy poderosa: un ordenador podía ayudarnos a desarrollar gráficos, diseños de ingeniería, u otros programas, sin tener que aprender un lenguaje intermedio. Pero IBM y HP impusieron su modo de trabajo, basado en terminales de texto. Y de ahí no salimos. Podemos usar gestores de versiones, editores más o menos vitaminados, pero sigue siendo la misma pantalla, el mismo teclado. Y el reconocimiento de voz sigue fallando. Solo unos pocos visionarios como Bret Victor luchan por tener algo distinto.
  • Luego está el tema de la programación por componentes, que hoy en día se llama "usar un entorno de trabajo". El mejor ejemplo es JavaScript, que cada dos por tres aparece un nuevo framework que viene a "revolucionar" el desarrollo web... hasta que pasados unos meses, queda sin mantenimiento.
  • Las grandes empresas, aunque quieren dar la apariencia de usar estándares abiertos, en realidad siguen creando nichos tecnológicos, que atrapa a miles de programadores, como adeptos a una secta. "Si usas mis herramientas (toolchain) no necesitarás más para crear X".
  • La administración y los gobiernos. No sabéis la cantidad de empresas que se crean con el único objetivo de llevarse subvenciones y ayudas del gobierno central o autonómicas. Muchas de ellas presentarán bonitos informes de que sí, de que ellas pueden resolver cualquier problema que necesite resolver la Administración, pero solo cuando hayan ganado el concurso, y solo entonces, es cuando contratarán a los informáticos que lo harán posible.
  • La competencia desleal de las administraciones locales. Muchas empresas creadas por emprendedores, se van al garete porque, de repente, a un ayuntamiento se le ocurre la fantástica idea de ofrecer el mismo servicio tecnológico, pero claro, usando toneladas de dinero de los contribuyentes, algo contra lo que las pequeñas empresas no pueden competir.
  • El desastroso reconocimiento salarial de los informáticos. ¿Para qué vas a estudiar informática si vas a ganar la tercera parte que un fontanero? ¿Te va a contratar una empresa? Sí: una subcontrata que se quedará con el 15 % de todo lo que cobrarías si hicieras el trabajo directamente para el cliente. Por eso los mejores emigran a Europa (el doble del sueldo que en España) o a Gran Bretaña (tres veces el sueldo) o a Norteamérica (cuatro, cinco...).
  • Programar es difícil. A veces, muy difícil. Hace años se creó "la hora del código" para animar a los sistemas educativos a que incorporen clases de programación a los niños. Y en épocas recientes, hay enormes esfuerzos en tiempo y dinero para animar a las niñas a que sean informáticas. Pero la realidad es tozuda: no todo el mundo sirve para programar. Al menos, para programar BIEN. Que una persona resuelva una serie de problemas en Scratch haciendo que Frozen dibuje anillos en el hielo, no significa que luego sea capaz de entender el para qué sirve una lista enlazada o una búsqueda binaria. Hay muchos niños que han asistido a estas clases de iniciación, y no piensan volver. Y en los universitarios pasa lo mismo: el 25 % de los alumnos de informática, abandona la carrera en el primer año. Se levantaron voces críticas contra esto: no se trata de decir que no puedas estudiar una ingeniería, sino que, además, tienes que tener la suficiente sangre, sudor y lágrimas para aguantarlo.
Y no cuento el desencanto que sufren los recién licenciados cuanto entran a trabajar por primera vez en una empresa informática "tradicional". El sock es tremendo: se ven obligados a usar herramientas/lenguajes de hace quince o veinte años, en ordenadores con pantallas de quince o diecisiete pulgadas... El trauma generado es... inevitable.

BlackHole escribió:pues en España lo dudo mucho. Generalmente en el sector de las Tecnologías de la Información, los salarios actuales en 2018 son un 33% más bajos que en 2007 justo antes de la crisis. No solo no hemos corregido el 19% de inflación, sino que perdemos el 19 + 33 = 52% de poder adquisitivo respecto a muchas otras profesiones. Eso no ha pasado en la IT de otros países, ni en Europa ni en Estados Unidos, Canadá o Australia.

Perdón, pero, ¿de dónde has sacado estos datos? La evolución de los salarios en Informática y Teleco se ha mantenido más o menos siguiendo la evolución de los salarios medios:
2017 26.535€
2016 26.710€
2015 26.475€
2014 26.191€
2013 26.027€
2012 25.894€
2011 25.515€
2010 24.786€
2009 24.164€
2008 23.252€
2007 21.989€
2006 21.168€
2005 20.616€
2004 20.045€
2003 19.385€
2002 18.601€
2001 17.919€
2000 17.319€
https://datosmacro.expansion.com/mercad ... dio/espana

Incluso es uno de los mejor pagados. Informáticos y telecos son los profesionales mejor pagados
Imagen
Otra cosa: no puedes sumar el porcentaje de inflación y porcentaje de variación del salario... son cosas distintas. Es como sumar los porcentajes de variación del precio del aceite y de la leche. En mi caso, con tu 52 %, yo no puedo decir que en estos momentos pueda gastarme o comprar la mitad de cosas que compraba en el 2007.

BlackHole
Mensajes: 1669
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 29 veces
Agradecimiento recibido: 523 veces

Re: Desencantado con el Software

Mensajepor BlackHole » 01 Oct 2018 17:33

¿De dónde he sacado esos datos? De las experiencias de antiguos compañeros de trabajo y de las ofertas de trabajo que lamentablemente tengo que seguir cada día, aunque me hayan rechazado en 500 de ellas en los últimos 11 años, ingénuo de mí no pierdo la esperanza de volver a trabajar de nuevo. Te digo que para los mismos puestos que pagaban 25000 euros hace 11 años, ahora pagan 18000.

¿Qué porcentaje de pérdida hay en 7000 euros sobre 25000? Un 28%, y en algunos puestos sí ha llegado al 33%. Si las cosas cada día están más caras y los sueldos más baratos, si no es pérdida de poder adquisitivo, ¿tú cómo lo llamas? Si la inflación hubiese corregido el sueldo, esos 25000 euros ahora serían 29750 y sin embargo las ofertas son de 18000. 11750 euros de diferencia es el 40% de 29750. Vale, no son 52, quizás mis matemáticas no son las mejores, pero sigue siendo muchísmo.

No sé cuánto puedes gastar o comprar con tu salario de 2018. Te voy a decir lo que puedo gastar o comprar con el mío: cero. Ni a trabajos de técnico de soporte microinformático a 10.000€ (que los hay, manda huevos, apenas el salario mínimo) hay opción de entrar con 48 años. Sobrevivo porque gracias a los 10 años que sí cobraba esos 25000 anuales, ahorré casi todo y de ahí voy tirando. Ya sabemos cómo se cocinan las estadísticas en este país. También se dice que las empresas proporcionan formación a los empleados, y por ejemplo yo no he recibido nunca ninguna en toda mi vida laboral.

Avatar de Usuario
minter
Mensajes: 4826
Registrado: 22 Jul 2014 18:51
Agradecido : 6762 veces
Agradecimiento recibido: 2602 veces

Re: Desencantado con el Software

Mensajepor minter » 01 Oct 2018 19:39

Y la IA tambien la programan sobre toda esa capa superflua y poco optimizada a base de GHz o por el contrario, programan desde cero?
Porque el asistente de Google se parece mucho al Eliza, que no hace mas que contar chistes de animalitos y contestar NO TE ENTIENDO.
Comprendo que haga falta algo de potencia para interpretar comandos de voz, pero parece que ahí se queda. Las respuestas a veces parecen dadas con los pies.
Los asistentes tipo Cortana, Siri o Google se puede considerar IA o son simplemente scripts lanzados a través de comandos de voz?

Avatar de Usuario
wilco2009
Mensajes: 2141
Registrado: 07 Ene 2013 16:48
Ubicación: Valencia
Agradecido : 202 veces
Agradecimiento recibido: 384 veces

Re: Desencantado con el Software

Mensajepor wilco2009 » 01 Oct 2018 19:59

Yo entiendo que IA solo es si es.capaz de aprender.
"Nada viaja a mayor velocidad que luz con la posible excepción de las malas noticias las cuales obedecen a sus propias leyes."

Douglas Adams. Guía de autoestopista galáctico.

Avatar de Usuario
explorer
Mensajes: 695
Registrado: 10 Ene 2016 18:43
Ubicación: Valladolid, España
Agradecido : 24 veces
Agradecimiento recibido: 680 veces
Contactar:

Re: Desencantado con el Software

Mensajepor explorer » 01 Oct 2018 22:11

BlackHole escribió:¿De dónde he sacado esos datos? De las experiencias de antiguos compañeros de trabajo y de las ofertas de trabajo que lamentablemente tengo que seguir cada día, aunque me hayan rechazado en 500 de ellas en los últimos 11 años, ingénuo de mí no pierdo la esperanza de volver a trabajar de nuevo. Te digo que para los mismos puestos que pagaban 25000 euros hace 11 años, ahora pagan 18000.

Estamos completamente de acuerdo.

Te cuento cómo estaba yo en el 2007: una subcontrata me pagaba 17 €/hora por realizar un trabajo de analista/programador para un organismo de la administración central. Esa empresa cobraba por mis servicios 41 €/hora. Pillé un rebote y me dije que, al finalizar el contrato, me iría de allí, solo por puro orgullo. Llegó ese último mes, y la subcontrata me ofrece 2500 € más al año (muy lejos aún de los 73 k€/año que ellos se llevaban). Y me negué y me marché a mi casa. Intentaron ofrecerme más, pero mi ética me impedía seguir allí. Yo entiendo el porqué existen las subcontratas, pero lo que no concibo es que el trabajador se lleve una parte muy pequeña de lo que produce.

11 años más tarde he conseguido llegar a los 44 k€, pero me pasa como a ti: la edad no perdona y va a ser casi imposible que encuentre otro trabajo.

Avatar de Usuario
explorer
Mensajes: 695
Registrado: 10 Ene 2016 18:43
Ubicación: Valladolid, España
Agradecido : 24 veces
Agradecimiento recibido: 680 veces
Contactar:

Re: Desencantado con el Software

Mensajepor explorer » 01 Oct 2018 22:15

Recuerdo que un amigo empezó a desensamblar el Windows 98, y que aquello era un infierno: montones de líneas de código que no eran mas que saltos a otras zonas del programa, donde quizás se cambiaba el valor de una variable, y regresaba. Vamos, que se notaba a la legua que había sido programado en C++.

BlackHole
Mensajes: 1669
Registrado: 03 Ago 2011 23:07
Ubicación: Aluche, Madrid
Agradecido : 29 veces
Agradecimiento recibido: 523 veces

Re: Desencantado con el Software

Mensajepor BlackHole » 02 Oct 2018 01:43

Pero hay un salto muy grande desde programar en C (ni en los 90 se planteaba nadie hacer un OS complejo en ensamblador, eso no hay equipo de diseño que lo soporte) a todas las entelequias de las que más o menos habla el artículo. Yo no me hubiese asustado en absoluto que Windows 9x estuviese hecho en C. Otra cosa serían las optimizaciones que un buen compilador quizás hubiese generado. Atrás quedaron los tiempos del Visual C 5.0 y 6.0 que más o menos podían ser manejables y con "Runtimes" que todavía eran abarcables.

Ya monstruos actuales como .NET 4.5/4.6/4.7 tienen que tener cientos de DLLs instaladas y miles de funciones en bytecode que tienen que generar código máquina real (a través del proceso Native Image Generator o Ngen) para el procesador exacto de la máquina donde está instalado, ocupando al final montones de GB en disco (mi directorio winsxs ocupa 17 GB en estos momentos). Es que ya es todo capa sobre capa, sobre capa y sobre capa. Es que leo en Wikipedia que incluso el compilador del Visual Studio genera código intermedio que se ejecuta en máquinas virtuales, y ya flipo. No me extraña que .NET y Java sean parecidos, con sus Just In Time (JIT) compilers que generan el código ensamblador real en tiempo de ejecución. Incluso los móviles con Android hacen lo mismo, primero Dalvik era su máquina virtual, ahora es ART que la reemplaza. Todo cada vez es más complicado... supongo que para el programador será lo contrario.

Como dije más arriba, no soy programador profesionalmente (soy de sistemas y algo de redes) pero hay una diferencia grandísima de cuando participé en la creación de la web de mi facultad en 1993 con HTML puro y duro, a los "frameworks" de Javascript que te hacen cositas con docenas de funciones debajo. Le harán quizás más fácil la vida al programador, pero al final una sola página web acaba pesando varios cientos de KB. He visto ofertas de trabajo pidiendo especialistas en Node.js, supongo que será eso, ¿no?

En fin, me pierdo en este mundo. Como decía Mafalda... "paren el mundo que me quiero bajar". Hoy estoy depre.

dragonet80
Mensajes: 660
Registrado: 28 Nov 2017 12:36
Agradecido : 291 veces
Agradecimiento recibido: 266 veces

Re: Desencantado con el Software

Mensajepor dragonet80 » 02 Oct 2018 02:30

explorer escribió:Solo unos pocos visionarios como Bret Victor luchan por tener algo distinto.

Muchas gracias por el enlace, no conocía a Bret Victor. Me ha gustado mucho.

Avatar de Usuario
explorer
Mensajes: 695
Registrado: 10 Ene 2016 18:43
Ubicación: Valladolid, España
Agradecido : 24 veces
Agradecimiento recibido: 680 veces
Contactar:

Re: Desencantado con el Software

Mensajepor explorer » 02 Oct 2018 05:42

El caso es que sí que hay gente (hay gente para todo) que hace cosas como un sistema operativo, en ensamblador. Es el caso de estos proyectos:
  • MenuetOS es un sistema operativo libre, creado por Ville Mikael Turjanmaa para PC x86, escrito enteramente en lenguaje ensamblador (FASM) para 32 y 64 bits.
  • KolibriOS es un sistema operativo libre con un núcleo monolítico anticipativo en tiempo real escrito para PC con arquitectura x86 de 32 bits. Es desarrollado y mantenido por The KolibriOS Project Team. KolibriOS está escrito completamente en lenguaje ensamblador usando el FASM. Sin embargo, permite que lenguajes y compiladores de alto nivel (C, C++, Free Pascal, Forth; entre otros) puedan ser usados para el desarrollo de aplicaciones.
  • BareMetal OS es un sistema operativo de 64 bits para la plataforma x86-64, de fuente abierta, escrito en ensamblador, y creado por Return Infinity1​ para lograr computación de alto rendimiento con un tamaño mínimo.
aunque... no tienen mucho mantenimiento. Están parados desde hace años.

Recuerdo haber visto una distribución de uno de estos sistemas, y era impresionante ver un sistema operativo completo, más docenas y docenas de programas, incluidos un navegador web o un cliente de correo, todo ello dentro de un disquete de 3.5 ".

Hoy en día se podría empezar a hacer uno desde cero, pero las CPU actuales son tan complicadas que perderíamos mucho tiempo, comparado con el resultado que nos dan los compiladores modernos.

Pero sigue habiendo ambientes donde se sigue programando en ensamblador, como el caso de los microcontroladores o las FPGA.

Avatar de Usuario
llopis
Mensajes: 398
Registrado: 21 Ago 2018 15:27
Ubicación: Asturias
Agradecido : 195 veces
Agradecimiento recibido: 333 veces
Contactar:

Re: Desencantado con el Software

Mensajepor llopis » 02 Oct 2018 12:42

De la que empezaba el articulito me temí lo peor con eso de "Llevo 15 años programando".... 15 añitos :lol: :lol: :lol:

Pero la verdad es que no estuvo mal. Estoy de acuerdo con él que el software moderno es, en general, una mierda. Capas tiradas encima de capas, tiradas encima de capas. Tanta abstracción que nadie sabe qué está pasando por debajo.

Como programador de juegos, donde la eficiencia del programa es importante, llevo muchos años peleando contra eso y proponiendo alternativas.

A nivel personal, llegó un momento hace muchos años que me di cuenta que todas esas capas, en vez de ayudarme, me molestaban. Más específicamente, me ayudaban a hacer una chapuza que funcionase, pero a la hora de acabar un juego y lanzarlo eran todo problemas. Por eso, desde entonces, intento que el desarrollo de mis juegos sea lo más sencillo posible: C, OpenGL, SDL para un par de cosillas, y se acabó. Y no es ni siquiera por eficiencia, porque los juegos que hago hoy en día no usan los recursos a tope, son simplemente para que las cosas no sean más complicadas de lo que tienen que ser, y para pasármelo bien mientras lo hago.

Avatar de Usuario
FloppySoftware
Mensajes: 226
Registrado: 21 Oct 2016 15:10
Agradecido : 39 veces
Agradecimiento recibido: 63 veces
Contactar:

Re: Desencantado con el Software

Mensajepor FloppySoftware » 02 Oct 2018 21:20

Unix está escrito en C desde hace un porrón de años y nadie se extraña. De hecho, es una de sus características más cacareadas, la portabilidad por estar desarrollado casi todo en un lenguaje de programación no ensamblador.

En cuanto a salarios, veo bastante poca verguenza en las ofertas de trabajo. Hasta 10 o 12.000 € a veces.

Empresas, pues de todo habrá, pero muchas con Notepad++ y PHP que son gratis, a tirar millas.

En cuanto a frameworks y demás, salen como setas, demasiados, supuestamente reducen el tiempo de desarrollo, y a veces creo que es lo contrario, además de conseguir que una aplicación ligera acabe siendo una mole.

Para optimizar, no hay tiempo, y si lo hay, para poca cosa, que la deadline fue ayer, y recursos pocos.

Lo que viene siendo trabajar, vamos.
Developing software since 1987 - http://www.floppysoftware.es

Avatar de Usuario
Hodor
Mensajes: 1705
Registrado: 19 May 2015 10:55
Ubicación: A 900km de Oviedo
Agradecido : 438 veces
Agradecimiento recibido: 525 veces

Re: Desencantado con el Software

Mensajepor Hodor » 02 Oct 2018 22:29

Personalmente me hace gracia leer esa frase tan manida de que los frameworks reducen el tiempo de desarrollo. Sí, sobre todo cuando cada año aparecen varios o de buenas a primeras el que utilizas te cambia de versión afectando radicalmente su modo de trabajo -léase Zend, Angular o similares.

Y si a todo ello le sumamos la incertidumbre de si merece la pena invertir tiempo de aprendizaje en algo que puede dejar de ser útil en poco tiempo, pues peor todavía.

Un saludo.

Avatar de Usuario
Estrayk
Mensajes: 1232
Registrado: 05 Jun 2015 18:36
Ubicación: Valencia
Agradecido : 345 veces
Agradecimiento recibido: 985 veces

Re: Desencantado con el Software

Mensajepor Estrayk » 03 Oct 2018 00:55

BlackHole escribió: (ni en los 90 se planteaba nadie hacer un OS complejo en ensamblador, eso no hay equipo de diseño que lo soporte)


Perdón que me entrometa en este interesante debate que estáis teniendo, solo recordar que MagiC para Atari (1992) también estaba totalmente escrito en ensamblador, era multitarea y como podréis imaginar, funcionaba perfectamente en un ST a 8Mhz.

https://en.wikipedia.org/wiki/MagiC

https://www.youtube.com/watch?v=f389fxMi1Lw

Un saludo! -drinks
-j4tar1 ・Falcon 060 ・・MegaSTE ・・STe ・
-coam1・v600・A1000・A1220・A1230・A1260・v1200・CD32・G5 MorphOS・
MiSTMiSTer・X68000・Acorn A3010・Performa 630・PowerMac 4400/7600/G3/G4・Ultimate64・Atari XE 1Mb+VBXE・MSX2F1XD


Volver a “Lenguajes de Programación y herramientas Dev”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados