220 meneos
7224 clics
El programador de la aplicación Task Manager de Windows comparte algunos consejos sobre la misma [ENG]
Soy el desarrollador de Microsoft que escribió el administrador de tareas de Windows (TaskMgr.exe) en su casa alrededor de 1994. Los desarrolladores de Windows NT me dejaron trabajar en el código principal a pesar de que era un novato en ese momento. Eso significó que tenía que hacerlo funcionar y pulirlo, ya que iba a ser una parte oficial de Windows, que es donde permanece hasta el día de hoy. Sabiendo esto, voy a comentar ciertas características que siguen en el núcleo de esta aplicación.
|
comentarios cerrados
La parte más antigua debe seguir funcionando para que funcione el software más antiguo.
Si algo bueno tiene windows es que pillas un ejecutable de hace mucho tiempo y posiblemente funcione sin problemas.
No tengo nada contra el SW antiguo si cumple su función, pero la consistencia del Escritorio se va a la mierda así y ellos tienen recursos.
Hay muchísima más compatibilidad de software antiguo de Windows en Linux gracias a Wine que en versiones modernas de Windows. Y además las hay a pesar de que el kernel Linux no ofrece ninguna API estable, sino que cambia en cada nueva versión del kernel. ¿Porque? Porque el todo el software necesario para ejecutarlo está en el espacio de usuario, y no en el mismo kernel como ocurre en Windows.
Lo que pasa en Windows es que es un auténtica chapuza de parches, encima de parches, encima de parches, que ni los propios desarrolladores se atreven a rehacer por miedo a que todo explote. Por eso cada nueva actualización de Windows da una cantidad tremenda de problemas, y también por eso en Microsoft están tan interesados en romper con todo esto con una nueva versión de Windows que rompa por completo la retrocompatibilidad o la sustituya por emulación: Windows RT, Windows Lean/Windows for ARM y ahora Windows 10X, y lo que está por venir.
¿No me estarás entonces diciendo que ... lo hacen por compatibilidad hacia atrás?
¿Cómo soluciona esto Linux? Muy sencillo
Linux y sencillo en la misma frase como que no.
Con un windows antiguo si necesitas el Python 3.5 bajas el instalador de x86 lo instalas y palante.
En un linux "antiguo" si necesitas el Python 3.5 ... empieza la odisea ...
Los repositorios ya no funcionan. Si sabes suficiente del mundillo sabes que debes editar un archivo de texto para apuntar a los repositorios "archive" o similar.
Y actualizas para ver la caja de sorpresas con la que te encontrarás. Al ser una versión antigua del sistema operativo Python 3.5 no está en el repositorio, ¿quien iba a necesitar Python 3.5 en un Linux instalado hace la friolera de 2 años? Imposible, nadie nunca querría eso.
¿Binarios estáticos? Eso es sacrilegio en Linux, así que solo si algún pringado como tú ha tenido ese problema y ha montado esa solución quizá los haya publicado, aunque es más fácil ganar la lotería y contratar a alguien que lo haga por ti.
Entonces la opción de los foros es ... compílalo tú mismo. Seguimos en el "muy sencillo".
Y ahí si no te has pillado los dedos una veintena de veces lo intentas a ver si esta vez sí que sí. Buena suerte.
Pues nada mejor vamos a actualizar el puñetero sistema entero para pillar el Python de esos nuevos repositorios. ¿Quién no quiere actualizar todo el sistema operativo para poder ejecutar el Python 3.5?
Total, es solo un saltito de 3 versiones estables, ¿qué podría salir mal?
Nada, absolutamente nada, por que actualizar es muy sencillo. Apt-get dist-upgrade -y, y ale, en cuanto peten las dependencias con el Kernel a reinstalar desde cero que es un pis pas.
www.adslzone.net/2018/11/07/nombres-archivo-prohibidos-w10-historia/
www.phoronix.com/scan.php?page=news_item&px=MTI0OTg
Intenta usar algo hecho en los primeros Delphi o VB y verás.
En mi empresa también teníamos este problema, usamos Ubuntu y como tú mismo has dicho en los repositorios viene una versión determinada de PHP. ¿Qué ocurre si necesitas una versión distinta de PHP a la que hay en los repositorios? Es más, ¿Que ocurre si tienes distintos proyectos que necesitan distintas versiones de PHP? No tiene sentido mantener dos o más servidores. La respuesta es muy simple y obvia: tener distintas versiones de PHP instaladas en el mismo servidor, y configurar a cada web la más óptima.
Esto se puede hacer de muchas formas, por ejemplo compilándolas desde el código fuente y configurándola si a manita, pero obviamente no es muy práctica ni cómodo, sobretodo para tenerlo todo actualizado, sería un auténtico engorro. La solución más sencilla es usar un PPA, y el mejor de ellos sin duda es el PPA de ondrej:
launchpad.net/~ondrej/+archive/ubuntu/php
Está mantenido por uno de los responsables de mantener actualizados los paquetes de Debian, por lo que es de total confianza, y además se usa en infinidad de servidor en producción. No es nada experimental ni mucho menos. El repositorio está disponible para todas las versiones LTS de Debian y Ubuntu con soporte, e incluye todas las versiones de PHP con soporte, incluidas la 5.6 y la 7.0 que ya no tienen soporte oficial, pero hay gente que se encarga de aplicarles los últimos parches de seguridad. Y por si esto fuera poco, para complementarlo, el mismo ondrej también tiene un PPA con la última versión de Apache:
launchpad.net/~ondrej/+archive/ubuntu/apache2
#102 ya ni me acuerdo de dónde lo descargué yo, en cualquier caso he zipeado lo que tengo y subido a un sitio web que tengo por ahí sin uso. SIgue el enlace y te lo podrás descargar. Luego es sólo descomprimir y lanzar el ejecutable, no requiere instalación. Pero haz el favor de pasarle un antivirus antes, que aunque no tenga, nunca hay que fiarse de ejecutables de desconocidos y yo lo soy para ti.
nylo.100webcustomers.com/PinballXP.zip
#107 seguramente, pero ese yo nunca lo jugué.
Con Windows hay motivos para mantener versiones antiguas y sin soporte: porque dependes de ellas para que el software o el hardware de tú empresa siga funcionando. Porque sino tendrás problemas de retrocompatibilidad
En Linux no tiene sentido mantener una versión antigua, porque en una moderna todo seguirá funcionando y tienes mejor soporte y más seguridad. En Linux hay que actualizar siempre.
¿Hasta donde llega tu fanatismo por defender ese fracasado símil?
Típica respuesta.
Siento mucho que tus prejuicios te limiten tanto las opciones.
Lo he indicado en un comentario anterior, el linux era un Debian Wheezy y en cualquier caso la cuestión no es tanto el soporte si no el modelo. En el caso de Linux se tiende a delegar la capacidad para instalar aplicaciones de forma sencilla a los mantenedores de repositorios, y los creadores del programa quedan a expensas de si ese repositorio decide incluirlo o no o de si deciden mantenerlo o dejar de hacerlo.
Dada la ingente diversidad de variantes de Linux se hace harto difícil que un creador de aplicaciones mantenga sus propios repositorios para todas esas distribuciones y para cada subversión de cada distribución.
Si lo comparamos con Windows a quien hace la aplicación le basta con compilar un instalador para x86 y otro para x64. A menos que requiera de características que solo estén en una versión específica de windows lo más seguro es que funcione en todas sus variantes recientes y antiguas.
Lo que describía eran las consecuencias del modelo, nada que ver con pedir ningún tipo de soporte. Python no necesita que Windows XP tenga soporte de Microsoft para publicar fácilmente una versión que funcione en todos los windows incluído ese.
Sigues rellenando tu ignorancia con memeces.
Al final la culpa siempre es del usuario que "no sabe". Después todo son lloriqueos.
Es triste ver como se defiende una postura desde el fanatismo y sin el más mínimo contacto con la realidad.
Que alucines con eso sí es para alucinar.
Por otro lado que creas que no puedan convivir más de una versión de Python en un único sistema dice bastante del nivel de la discusión.
Ninguna distribución Linux de soporte extendido, es decir, de uso empresarial, se queda sin soporte a los dos años. En caso de que uses una es que eres un inepto, estas distribuciones están pensadas para uso doméstico y solo para usuarios que les gusta estar al día y probar siempre lo último. Y en caso contrario obviamente estás mintiendo, porque las LTS tienen 6 años de soporte en el caso de Ubuntu.
Pero es que además como ya te he dicho se puede actualizar desde una LTS a la siguiente con total seguridad de que todo va a seguir funcionando.
Por cierto, quizás deberías informarte sobre las PPA, son la forma recomendada de tener software actualizado sin necesidad de compilarlo. Pero eso si, antes actualiza tu distribución, porque las PPA no funcionan en versiones sin soporte:
launchpad.net/~deadsnakes/+archive/ubuntu/ppa
Pues puedes seguir esperando. Que seas incapaz de imaginarte ni un único buen motivo para no actualizar un sistema operativo dice más de ti que de mí.
Por supuesto que te estás quejando de que no tienes soporte, eso es lo que haces cuando dices que ya no puedes actualizar los repositorios y solo puedes recurrir a los de archive. Si usases una versión con soporte no te ocurriría eso.
Yo no tengo ningún interés en acceder a repositorios, me veo obligado por el modelo de distribución de aplicaciones que se ha definido y que tiene esas pésimas consecuencias.
A mí el repositorio me la sopla, yo solo quiero instalar Python 3.5.
Y si alguien ha decidido que para que yo pueda instalar Python 3.5 el sistema operativo tiene que tener soporte activo el problema es del diseño de ese modelo.
Y aún así en Debian nada te impide instalar el software que te de la gana en ella, ya sea de los repositorios, usando PPAs, usando paquetes precompilados o compilándolos tú mismo en última instancia.
¿Leíste mi primer comentario al respecto?
Ya me referí a esas "soluciones", y a sus consecuencias.
Si eliges algo que no se adapta a tus necesidades es tu problema.
¿Te refieres a no elegir Windows?
Siempre la culpa es del usuario, autocrítica nula. Ese es el fondo del asunto, no querer reconocer las consecuencias del modelo. Y luego los lloriqueos por que es el usuario el que no sabe.
¡Nos ha jodido! Lo raro sería que tuvieses problemas..
Y desconozco el caso concreto de Oracle 10, pero dudo mucho que sea complejo de instalar y de hacer funcionar, tan sencillo como instalar todas las dependencias, darle permisos de ejecución al binario del instalador y ejecutarlo. Quizás el problema lo tendrás al instalar las versiones adecuadas de las dependencias, ya que las distribuciones recientes vendrán con versiones más modernas y posiblemente no sean compatibles, pero nada te impide instalar manualmente las versiones que necesites de cada dependencia, aunque no niego que puede llevar algo de trabajo, es lo que tiene instalar software antiguo. Pero vamos, que volviendo al principio de tu comentario, si usas una distribución de Linux de hace 10 tampoco tendrás problema para instalarlo y hacerlo funcionar.
Si eres un usuario novato y además quieres el último software, Debian no es para ti, así de sencillo. Si hubieses usado una distribución orientada a tu nivel de usuario no hubieses tenido estos problemas, por ejemplo Ubuntu sin ir más lejos, donde para instalar la versión que te de la gana de Python es tan sencillo como instalar una PPA, actualizar el listado de paquetes e instalar el que necesites:
launchpad.net/~deadsnakes/+archive/ubuntu/ppa
- Ubuntu 16.04 (xenial) Python 2.3 - Python 2.6, Python 3.1 - Python3.4, Python 3.6 - Python3.9
- Ubuntu 18.04 (bionic) Python2.3 - Python 2.6, Python 3.1 - Python 3.5, Python3.7 - Python3.9
- Ubuntu 20.04 (focal) Python3.5 - Python3.7, Python3.9
Pero nada, la culpa no es tuya, sino de los responsables de Debian por no hacer su distribución acorde a tus necesidades..
Debian se caracteriza por ser una distribución tremendamente conservadora, con paquetes que nunca se acercan a la última versión disponible del software y que no se actualizan más que para corregir fallos de seguridad. Y tú te estas quejando precisamente de eso. En fin, que no tienes ni idea de porqué elegiste Debian, lo hiciste en modo ruleta rusa, y te salió el tiro por la culata.
Que te vaya bien "usuario avanzado"..
O seguir soltando frases hechas sin fundamento. Como veas.
Opinión sin ningún fundamento detrás. Por ejemplo, en otros lugares no saben usar coches con cambio de marchas manual y me dirás que es por la complejidad o que son tontos. ¿No?
Vaya tópicos mas rancios a estas alturas.
Saludos y suerte con la informática.
Las distribuciones ESTABLES son precisamente eso, ESTABLES. No se actualiza nada, a no ser que sea imprescindible (seguridad, fallos...) y menos cosas como el intérprete de python del que dependerán 2000 paquetes más.
Hay varias formas de tener varias versiones de python instaladas, unas más sencillas y otras más complicadas, depende de lo que necesites.
Lo que no hay es una versión de 'Debian Wheezy con python 3.5 como parte del sistema', porque creo recordar que wheezy iba con python 2.7 y 3.2. Si quieres que Debian te garantice la estabilidad del sistema tendrás que migrar todo el sistema.
Lo puedes instalar, no te lo impide nadie.
Otra cosa es que quieras 'sustituir' el python que incuye Debian Wheezy y del que dependen otros muchos paquetes, por el que a tí te da la gana y que todo siga funcionando bien. Debian Wheezy es una versión ESTABLE, cuando se publica se congelan todas las versiones de todo y sólo se hacen actualizaciones mínimas de seguridad.
No es cuestión de 'modelo', tienes backports y tienes formas de ejecutar 'software nuevo' en 'distribuciones viejas'.
Y te repito que puedes tener varias versiones de python3 a la vez, y se instalan tan fácil como con apt-get. Y formas de hacerlo para el usuario que lo necesite sin tener que guarrear el sistema entero.
Y para que una distribución empresarial ya no tenga soporte tiene que ser MUY antigua, este año se ha quedado sin soporte Ubuntu 14.04 LTS, después de 6 años. En mi empresa teníamos un servidor con esta versión de Ubuntu y hemos actualizado a 18.04 LTS mediante el actualizador automatizado (Previo backup, por supuesto), pasando primero por 16.04 LTS, y todo el software y hardware sigue funcionando sin el más mínimo problema y sin tener que tocar ni una sola linea de ficheros de configuración. Y no hemos actualizado a 20.04 porque en el momento que lo hicimos aún no había salido, pero sin duda lo haremos en los próximos meses.
Por supuesto que te estás quejando de que no tienes soporte, eso es lo que haces cuando dices que ya no puedes actualizar los repositorios y solo puedes recurrir a los de archive. Si usases una versión con soporte no te ocurriría eso.
Y lo que me faltaba es leer que Linux es un modelo centralizado. No hay nada más descentralizado que Linux y el código abierto en general. Tú has elegido usar Debian, pero nadie te ha obligado a hacer esa elección. Hay otras distribuciones que son rolling release y iene siempre todo el software actualizado, como por ejemplo Arch y muchas otras. Y aún así en Debian nada te impide instalar el software que te de la gana en ella, ya sea de los repositorios, usando PPAs, usando paquetes precompilados o compilándolos tú mismo en última instancia. Si eliges algo que no se adapta a tus necesidades es tu problema. Y si ya no tienes soporte y la distribución que has elegido no cumple tus necesidades y/o expectativas o actualizas o cambias a otra distribución que si las cumpla.
No te equivoques, nadie te ha obligado a usar una distribución que use el modelo de repositorios con versiones estables del software y solo actualizaciones de seguridad, tú has elegido esa distribución. Como ya te he dicho hay muchas distribuciones que son rolling release y en los repositorios siempre tendrás la opciones de instalar las versiones más recientes del software.
Y de nuevo no te equivoques, Python 3.5 con total seguridad funciona sin problemas en tu sistema, otra cosa es que no te lo den todo hecho. Como comprenderás, no van a estar actualizando todos los paquetes de todo el software existente para todas las versiones de Debian, con o sin soporte. Si tú no quieres actualizar apechuga con las consecuencias.
Pero más allá de esto, es que la discusión es absurda, que tú te quejes de que no puedes instalar fácilmente Python 3.5 en un Debian sin soporte, es como si yo me quejase de que no puedo instalar Edge en Windows XP, y ni eso, porque en el primer caso si se puede, pero como no te lo dan hecho no te quieres molestar en hacerlo manualmente, y en el caso de Edge, Office, DirectX12 o lo que sea, no se puede instalar en XP por incompatibilidad, y da igual lo que intentes hacer.
Además has elegido Python 3.5 adrede, porque es la última versión que tiene soporte en Windows XP, Python 3.8, que es la última versión, ya no soporta XP.
Quién no ha leído mis comentarios eres tú, si quieres software reciente busca una distribución rolling release o actualiza e instalan PPA, porque quejarse de que en una distribución orientada a la estabilidad, que además no tiene soporte, no está la versión que tú quieres de un software específico en sus repositorios es totalmente absurdo.
#49 me lo he imaginado por tú nivel básico de usuario, si no era Ubuntu era Debian, y al fin y al cabo son prácticamente lo mismo.
Respecto a desarrollar software para Linux y la compatibilidad, nada más lejos de la realidad. En Linux desarrollas una sola vez con ma tecnología que te de la gana y funcionará en cualquier distribución siempre y cuando tenga instaladas las dependencias necesarias, y si no las tiene las puedes instalar tú. El desarrollador no se tiene que preocupar de ello.
En Windows en cambio tienes que hacer pruebas en cada versión y hacer constantemente comprobaciones de la versión para evitar incompatibilidades. Y eso de que lo haces… » ver todo el comentario
Además no es lo mismo buscar una duda y que te lo den hecho (Por ejemplo "dale click en Propiedades, ves a la pestaña XX, pulsa el botón Avanzado, etc, etc.." o "escribe el comando xxxx -czvf filename"), que mirarte la documentación por tu cuenta y entender el porqué se hace así, lo que significa cada parámetro del comando y aprovechar para mirar otros parámetros que también te puedan ser útiles.
Si quieres novedades o facilidad de instalación de software más allá de los repositorios oficiales hay muchas otras opciones más adecuadas, como una rolling release que ya te he comentado como 10 veces, o simplemente Ubuntu o cualquier deriva, que buscan la facilidad de uso por parte de usuarios novatos que no quieren complicaciones para instalar software, además de ofrecer un soporte mucho más holgado que Debian.
Y me reafirmo en lo que he dicho anteriormente, instalar Python manualmente son exactamente 3 comandos contados, que no son nada complicados, y que funcionan perfectamente en Debian porque están más que probados, ah, y sin necesidad de compilar nada:
gist.github.com/jaydenkieran/75b2bbc32b5b70c4fdfb161ecdb6daa2
Por cierto, ¿dónde ves la complejidad de usar un raton y un teclado para abrir una aplicacion y escribir? ¿En windows qué usas, el movimiento de los ojos?
Si tu mismo ves que en los foros la gente es capaz de resolver el problema, lo mismo no se trata de que sea un problema complejo, sinoque tu eres complejo.
Lo mismo que ese problema "super serio" que tiene quien solo ha usado cambio de marchas automático, pero que un chaval que no ha conducido en su vida es capaz de hacer en 15 minutos.
Visto que ya te han respondido más personas una cosa similar, lo mismo debas plantearte quien va en dirección contraria, tú o todos los demás.
Un saludo.
Usar recursos en algo que el usuario no te ha pedido ni va a pagar aparte no se lleva bien con la filosofía de software propietario y de licencias.
Desde el punto de vista de Microsoft (o cualquier otra empresa con el mismo modelo de negocio) es algo que solo produce gastos y cero beneficios.
Sería abierto, experimental, semilibre (bienvenidas las aportaciones para nuevos y modernos desarrollos, rechazo absoluto a dar soporte a tecnología antigua).
Linux no podría ser ese sistema operativo porque de entrada tiene que dar soporte a las aplicaciones existentes de Linux (y algunas aplicaciones que tienen décadas). No, para nada. Quizás llevar uno que otro código pero auditado con lupa y siempre evitando la retrocompatibilidad.
Seamos claros, dar soporte a tecnologías antiguas es la maldición de todo software y más de los sistemas operativos.
Este novedoso sistema operativo, al estar libre de retrocompatibilidad sería muchísimo más rápido, muchísimo más seguro, muchísimo más estable. Y olvidaba, bien importante, hecho única y exclusivamente para PC, a la mierda que ejecute en smartphones, tablets, o cosas raras.
Sería un sistema operativo de nicho, y muy seguramente tendría un mercado minúsculo al inicio, de 0.0000000000000000000001% pero que empezará a crecer a medida que sus cualidades comiencen a destacar. Pero eso, sólo lo puede hacer una empresa enorme, que piense a remoto plazo: 10 años o más y que no exija rentabilidad en este proyecto en 20 años o más.
Y que el propio desarrollador reconozca que era un novato y a pesar de ello le encargaron el diseño de esta pieza de software tan importante confirma lo mal que funcionaba (Y funciona, porque siguen manteniéndolo a día de hoy) la gestión de proyectos dentro de Microsoft.
El colmo es que luego vengan los fanáticos de Microsoft a hablar de lo "difícil" que es usar Linux y sus comandos, cuando todos los comandos vienen acompañados de un manual de usuario corto y fácil de entender (Parámetro -h o --help) y otro manual extenso y lleno de detalles (Comando man, abreviatura de manual).
Y yo me pregunto, ¿Si quiero saber para que sirve cada menú recóndito de Windows a donde me tengo que dirigir? No hay ningún manual a mano, lo más parecido son los iconos de interrogación (?) que no aportan nada, y la única opción oficial es recurrir a los foros de Microsoft, que son un auténtico despropósito, llenos de desorden, y comandados por voluntarios o asistentes de Microsoft maleducados que solo saben responder con textos genéricos o culpando a los mismos usuarios.
Para no romper lo que funciona, por compatibilidad hacia atrás.
Alguien que solo sepa conducir un coche con marchas manuales no tendrá ningún problema para conducir uno con marchas automáticas. Alguien que solo sepa conducir un coche con marchas automáticas tendrá serios problemas para conducir uno con marchas manuales.
¿Sigues sin saber reconocer cual de los dos es más sencillo? ¿Necesitas que te haga un dibujo?
Por cierto, ¿dónde ves la complejidad de usar un raton y un teclado para abrir una aplicacion y escribir? ¿En windows qué usas, el movimiento de los ojos?
¿Has leído mis comentarios antes de responderlos? ¿Te has enterado del caso que he explicado antes de contestar al tun tun cual fanático con símiles que no superan el más mínimo escrutinio?
¿Y por que te inventas que eso es lo que ocurre cuando instalas Python 3?
Si quieres que Debian te garantice la estabilidad del sistema tendrás que migrar todo el sistema.
Yo no quiero que me garantice nada, yo quiero poder instalarlo para poder usar la aplicación que tras actualizarse lo requiere.
Vaya nivel. Ante ese problema la propuesta de "solución" es esa, así que si quieres la aplicación sí es lo que tienes que hacer. Por que no puedes simplemente instalar el ejecutable, por que simplemente no existe.
No sé qué intentas defender pero el modelo del software libre es hegemónico en ciencia, computación, internet, cryptomonedas...
¿Crees que estoy atacando al software libre?
¿Sabías que Python es software libre?
Déjalo anda. Necesitas todo el rato inventarte que eso es lo que quiero, sustituir el Python que hay.
Falacia de hombre de paja.
Lo puedes instalar, no te lo impide nadie.
Me lo dificulta el modelo utilizado, tal como describí en: # 24: www.meneame.net/c/29940336
Que creas que por que se necesita un requisito de ese tipo ya se debe saltar a compilar tiene delito.
Si lo que no te gusta es Linux no lo uses
¿Te molesta que lo critiquen quienes lo conocen?
En fin ...
¿Me citas el apt-get para instalar el Python 3.5 en una Debian Wheezy? ¿O es que simplemente lo has soltado por soltarlo sin verificar nada?
Yo he probado un montón de pinballs, y el más conseguido en experiencia de juego para mí, es Pinball HD de iPad con un chisme que se llama "Duo Pinball" que añade 2 botones laterales y un lanzador.
Hombre, es que los Windows anteriores a XP eran basicamente un SO distinto (XP tiene un kernel NT como Windows 2000, los Windows 9x están basados en MSDOS) y a partir de XP se hicieron cambios que mejoraron la estabilidad y seguridad enormemente (por ejemplo, impedir que los programas accediesen tan directamente a los recursos del hardware) a costa de romper aplicaciones antiguas. Pero es que a veces no hay otro remedio, y no puedes mantener compatibilidad perfecta con un SO de hace 18 años.
De todas formas, creo que la retrocompatibilidad actual está bastante bien. Tengo algunos programas antiguos que van perfectamente y sobre juegos antiguos, si los adquiero desde Steam o GOG vienen preconfigurados para funcionar en equipos modernos o siguiendo tutoriales de PC Gaming Wiki.
Y el lado positivo es que tras todos esos cambios es menos probable que las aplicaciones actuales, que acceden a recursos de hardware a traves de APIs modernas, se rompan en futuras versiones que como lo hacían las antiguas aplicaciones 9x que hacían verdaderas locuras.
-A veces las grandes actualizaciones crean bugs inasumibles en entornos de producción, y eso es tan cierto tanto en Windows como en Linux.
-El Kernel o distros a veces eliminan el soporte a determinado hardware, por ejemplo drivers del kernel dificiles de mantener o el abandono progresivo de la arquitectura 32bits en la distribución Ubuntu.
-Incompatibilidades de hardware con drivers propietarios. El caso más obvio, pero no el unico, son las GPU de Nvidia, los drivers cerrados son muy buenos (comparados con Noveau) pero cuando la tarjeta deja de recibir soporte y actualizaciones una nueva actualización de Xorg puede romperlos, obligándote a quedarte en versiones anteriores o usar los inferiores drivers libres.
-Una Debian Stable actualizada no tiene acceso a muchos programas y drivers actuales y a efectos prácticos es usar una distro antigua (pero muy segura y estable).
-Los desarrolladores del kernel tienen la mala fama de cambiar innecesariamente APIs internas sin prestar mucha atención a la compatibilidad anterior, rompiendo ciertas aplicaciones y drivers a menos que sean actualizados. Pero si esos ya fueron descontinuados, adios.
En Windows lo instaló sin ningún problema desde XP hasta 2019 Server o Windows 10. Y no no puedo instalar una versión superior
Me hacen gracia estos comentarios de gente despreciando código legacy sólo por eso, por 'ser viejo'. Para reescribir de cero algo, hay que conocer muy bien el sistema del que partes, sus problemas y estar convencido absolutamente que no puedes arreglarlos sin 'romperlo todo', porque cuando lo hagas de cero arreglarás muchas cosas (conocidas), pero también meterás la pata en muchas otras (que seguramente no conocías).
En este caso las fuertes limitaciones para añadir software tan poco específico como es una nueva versión de Python, complementaria a la existente, para mantener la compatibilidad con las aplicaciones que lo van requiriendo.
Pero nada, la solución al problema es cambiar de sistema operativo, soluciones fáciles a todos los problemas.
Marca Linux.
El problema es cuando llegas a un sistema y te toca mantener 'código heredado' y el 'lado oscuro de la fuerza' te lleva a creerte que sabes qué hace y que eres capaz de sustituirlo por 'código nuevo, mejor diseñado, testeado y optimizado', sólo para cagarla y descubir que lo que 'sabías' no era ni la mitad de la funcionalidad que hacía ese código tan feo, viejo y parcheado. Porque sí, tu código nuevo tiene test... de la funcionalidad que conocías y que has desarrollado, pero no del resto.
autocaddiseño asistido por ordenador automatizado, tienda de fotos y palabraEn realidad casi todos estos problemas vienen en parte por culpa del modelo de software cerrado y drivers binarios de Windows. Con un modelo de drivers binarios, la única opción para poder ofrecer compatibilidad de hardware existente en nuevas versiones de Windows es tener una API estable que no cambie entre versiones, y por lo tanto te obliga a arrastrar todo el código de una versión a la siguiente. Sin esto con cada nueva versión de Windows TODOS los drivers dejarían de ser compatibles, y por lo tanto todo el hardware dejaría de funcionar hasta que el fabricante actualice su driver privativo, cosa que como bien sabrás no ocurre en la mayoría de ocasiones.
¿Cómo soluciona esto Linux? Muy sencillo, con drivers de código abierto e incluidos en el propio kernel. Con esto no dependes de que el fabricante tenga la voluntad de actualizar los drivers, ni de buscar drivers compatibles con tu versión del sistema, porque ya vienen incluidos. Pero esto tiene una contraparte, y es que como el kernel Linux no ofrece una API estable, es muy probable que los drivers privativos, que también existen en Linux, no funcionen de una versión a la siguiente, y de hecho ocurre prácticamente siempre, por ejemplo con cada nueva versión de Ubuntu hay que esperar a que AMD y Nvidia saquen sus nuevos drivers privativos compatibles con la misma, aunque en el caso de AMD es opcional porque ya hay un muy buen soporte de código abierto incluido en el kernel.
Windows es como los trajes de astronauta de la nasa, no puedes modificarlos, reproducirlos, ni analizarlos, simplemente das por hecho que la tecnologia está obsoleta, que no tienes a nadie en plantilla que la entienda, y que por alguna extraña razón, siguen funcionando.
Así que pegatina del nuevo logo de la NASA encima del traje y a funcionar.
La realidad es que Windows vive de rentas, si no fuese porque las empresas están ancladas a Windows para poder seguir ejecutando todo su software este sistema operativo no tendría ningún valor. Por ello sus esfuerzos no se basan en rehacerlo todo desde cero, sino en mover la compatibilidad hacia un emulador para poder hacer limpieza de todo el código antiguo que llevan arrastrando versión tras versión desde MS-DOS.
Lo dudo mucho, es más, lo que dices es directamente falso. Si tienes software de Windows 3.1 que funciona en versiones modernas de Windows será porque está siendo emulado en DOSBox o algún software similar. En Steam por ejemplo hay juegos de DOS y Windows 3.1 que vienen empaquetados con DOSBox, pero obviamente ello no quiere decir que el software original siga funcionando, sino todo lo contrario, no funciona y hay que hacer apaños.
La culpa es del usuario.
En fin ...
y encima pretendes que teniendo una versión sin soporte te lo den todo hecho y puedas tener el último software
Que no, que yo no pretendo nada de eso, que lo que yo explico es que el problema de fondo es que deba haber alguien manteniendo un repositorio y decidiendo que aplicaciones hay en ese sistema operativo y cuales no están y la "solución" es compilar.
Y que el modelo desincentiva a que decida quien hace la aplicación, quien finalmente decide es el que mantiene el repositorio del sistema operativo. Ese es el modelo que tiene esas consecuencias que he descrito.
Es como si instalo Windows Server 2008 en mi PC de mesa y me quejo de que no puedo jugar al GTA.
Es como si el hecho que allí puedas instalar el GTA dependa de que alguien de Microsoft decida que sí, en vez de que dependa de quien fabrica el juego.
Si eres un usuario novato y además quieres el último software, Debian no es para ti, así de sencillo.
Necesitas montarte tu película para que tu versión imaginaria de los hechos coincida con tu visión prejuiciosa de la realidad.
Si hubieses usado una distribución orientada a tu nivel de usuario no hubieses tenido estos problemas, por ejemplo Ubuntu sin ir más lejos
Mi nivel de usuario dice
En fin ...
Pero nada, la culpa no es tuya, sino de los responsables de Debian por no hacer su distribución acorde a tus necesidades..
El modelo que requiere que para que allí hayan aplicaciones alguien se dedique a mantener un repositorio, en vez de que sea el desarrollador quien decida si requiere o no funcionalidades del sistema operativo que ya no estén.