Retrocompatibilidade - O calcanhar de Aquiles do Linux (todas as distros)

A retrocompatibilidade é um problema sem solução no linux em qualquer distro.
As distros surgiram e desapareceram e o problema persiste até o momento.
Minha afirmação é baseada no fato de que todos os desenvolvedores gostariam de ver sua distro popularizada e ninguém mais usando Microsoft Windows. Se tal ambição é verdade por que o problema persiste?
Será que se eu algum dia me tornar um desenvolvedor e criar minha própria distro vou deixar de me importar com que programas comerciais não rodem nela e que todo mundo usa windows?
Deve ser uma maldição. Não há outra explicação.

Tudo bom? Talvez vc seja novo no mundo Linux e como tal, acha que toda compatibilidade esperada das distros dependem dos desenvolvedores das mesmas.
Mas o que pode um dev fazer, se a Adobe não tem interesse em lançar versões linux dos seus programas? O que o Dev pode fazer se o fabricante de sua VGA prioriza o desenvolvimento de drivers windows e deixa de lado os de linux? E isso se extender aos games AAA, a alguns hardwares para os quais não existe drivers… Nem tudo( quase nada disso) depende dos devs das distros amigo.

5 curtidas

Exatamente.

Os desenvolvedores ainda são bonzinhos a ponto de desenvolver o Wine e o Proton e a ponto de fazer engenharia reversa para fazer o Linux rodar em MacBooks. Os desenvolvedores fazem isso porque eles são gente boa, já que a obrigação de fazer eles não têm.

2 curtidas

Retrocompatibilidade: Que é compatível com uma versão anterior.

6 curtidas

nem sempre e culpa dos desenvolvedores amigo,nao adianta os desenvolvedores querer sendo que softwares sao de codigo proprietario e nao sao feitos para linux,adobe nao faz versão pra linux,e isso nao e culpa dos devs,inclusive os devs nao tem obrigação de fazer tal aplicativo(veja o wine,um software de codigo aberto que foi desenvolvido com carinho pelos desenvolvedores que sempre tentam melhorar a cada versão)

Respondendo as quatro resposta anteriores numa só, acredito que não entenderam bem o meu texto. A adobe tem interesse em vender seu produto, mas não vai fabricar para rodar num sistema que não tem nenhum comprometimento com a compatibilidade consigo mesmo dentre versões e atualizações. Você faria um programa para rodar num sistema assim sabendo que os clientes depois vão pedir o dinheiro de volta? A adobe tem tem toda a razão do mundo para não fazer. Também não to nem aí se o dev é bonzinho ou não, se for o caso de não ter obrigação nenhum e isso ser pretesto pra não se interessar então que divulgue no site de sua própria distro “a distro não tem qualquer obrigação com retrocompatibilidade, boa sorte”. Oferecer Wine e outras soluções tapa buraco é o mesmo que mandar o cara voltar pro windows e dizer “esqueça o linux, não é pra vc”, e pare de fazer propaganda enganosa de graça do “linux para todos”. Sempre há uma desculpa para não fazer uma distro coerente consigo mesma. Como não bastasse empresas de software não quererem fazer seus produtos para linux, as que já faziam desistiram. Não aguentaram ter que resolver tanto problema de bugs e devolução de grana. Linux é o melhor sistema operacional para rodar ele próprio e mais nada (força de expressão).

Mais uma coisa, não sou novo no linux, mas sempre trabalhei com servidores por 12 anos. Agora noutra área queria rodar os softwares para desenho e engenharia no linux e descubro que é impossível.

Porque a contrapartida de ter “de fábrica” retrocompatibilidade alta não compensa. Envolveria distribuir várias versões das mesmas biblioteca na ISO (dificultando o download e multiplicando o tamanho de disco ocupado) e se responsabilizar quando elas tiverem vulnerabilidades de segurança, para o benefício de uma minoria de programas.

Sabendo que há várias décadas que o Linux assumiu o compromisso de “não quebrar o espaço de usuário”, faz muito mais sentido passar a peteca da retrocompatibilidade das distribuições para os programas individuais, instruindo-os a embutir as dependências. Eu consigo rodar o SimCity 3000 nativo de Linux (de 1999) numa distribuição moderna – 64 bits, Wayland, Pipewire, etc. – usando um script que baixa as dependências (glibc da época, SDL da época, etc.). Há formatos centrados em facilitar isso, como o Flatpak e o AppImage. Tem inclusive um AppImage do Mosaic, de 1997.

Mesmo no Windows, você vai encontrar programas embutindo dependências (sinalizado pela presença de várias DLLs na pasta do programa).

Considerando que a vida útil de uma distro LTS (em especial as empresariais), e que o problema da retrocompatibilidade é bem menor do que esse post sugere (a glibc se comprometeu com retrocompatibilidade há 10 anos, o kernel e as bibliotecas fundamentais do OpenGL há mais de 20 anos…), vai demorar muito mais que o tempo de reembolso de qualquer código de consumidor razoável pra distro mudar de versão.

Pra quê? Android e macOS também quebram programas velhos periodicamente (pelo mesmo motivo das distros, os custos de manter versões antigas das coisas) e eles não precisam anunciar isso aos quatro ventos.


Entendo a frustação de não haver muitas opções (quando há) de software comercial para a área de design no Linux, mas um post com vários exageros, que trata de bode expiatório um problema que nem de longe é o principal (um que tem solução viável para os desenvolvedores, inclusive) não vai mudar isso.

4 curtidas

Lendo suas mensagens, passa e impressão que você esta fazendo uso errado da palavra retrocompatbilidade.

:point_up_2: isso é retrocompabilidade.

O que acho que você esta reclamando se chama portabilidade.

Portabilidade – Facilidade do software ser transferido para outro ambiente computacional e funcionar adequadamente.

Você sabe que a culpa de um software proprietário não rodar no sistema é culpa da desenvolvedora e não do sistema operacional.

6 curtidas

Se o desenvolvedor quiser fazer uma nova versão, ele pode fazer, pois ele tem o código fonte. Talvez ele tenha que ajeitar alguma dependência, mas na imensa maioria das vezes só precisa compilar novamente, em poucas vezes precisa fazer pequenos ajustes e raramente precisa refatorar o código. Não é impossível manter o software com suporte para meia dúzia de distribuiçao, e se uma empresas que faz software está falando isso, é desculpa tão esfarrapada quanto o dono do restaurante dizer que não pode fazer uma torrada pra vc porque ele só vende pão.

Certamente há outros fatores muito mais fortes por trás de alguns software que só criam versões para alguns seletos sistemas operacionais.

Eu entendo os dois lados, e concordo com ambos. Eu hoje uso windows após tentar e muito porque eu queria usar o Linux.

Na verdade tento usar o Linux a mais de 10 anos, mas acabo voltando ao windows.

Uma verdade é o Linux hoje está muito mais pronto que a 10 anos.

O Wine agora abre os programas até os portáteis.

Mas seja por problemas de drivers, ou falta de algum recurso que preciso muito nunca consigo usar Linux por muito tempo Infelizmente.

Eu espero, torço e quero muito que em breve eu consiga instalar o Linux e ele possa me trazer uma experiência de desktop sem dores de cabeça.

Olha, vou resumir com o seguinte argumento: Fala isso pra microsoft e pra apple que rodam os softwares pagos.
Sério cara, o ódio que tenho do windows só é superado pelo ódio da esperança falsa que é, a alternativa que o linux para desktop e ou workstation apresentam ser.
Linux é um sistema só para dev mesmo. Os devs não tem do que reclamar.

Na opinião de vocês, qual a melhor distro no quesito retrocompatibilidade e ao mesmo tempo viável para workstation?

Acho q seria o OpenSUSE, a base RPM geralmente segura bem nesse quesito
Mas se for no criterio de aplicação bem legada e so com Windows mesmo

1 curtida

Até porque a Apple tem excelente retrocompatibilidade, não teve nenhuma crise recente que vários aplicativos deixaram de funcionar sem mais nem menos (e não mudam com certa frequência a arquitetura dos seus computadores, deixando camadas de compatibilidade apenas temporariamente).

Novamente uma generalização desnecessária. Você está em um fórum cheio de pessoas que não necessariamente são desenvolvedoras utilizando esse sistema dia após dia (como eu).

Inclusive, desenvolvedores estão entre as pessoas que mais se importam com retrocompatibilidade, já que no fim das contas, quando alguma coisa muda no sistema, sobra para eles adaptarem no produto final.

Use alguma distro empresarial (como os derivados do RHEL ou do SuSE) por todo tempo útil dela. São 5 a 10 anos com a distribuição se responsabilizando que nenhum programa vai precisar ser adaptado, sem necessidade do aplicativo embutir dependências.

4 curtidas

Continua usando o termo errado.
Portabilidade!

1 curtida

:wave:t2:

Hoje em dia, na minha opinião talvez o Android seja o sistema operacional mais retrocompatível. Eu tenho um Android 4 que funciona muito bem como multimídia. Agora do lado Portabilidade vish, talvez teremos de nos reinventar se quisermos “casar” com o Android.

Mas, o parágrafo acima é perfil meu, o que é o melhor para mim pode não ser melhor para os demais. A magia da diversidade nos proporciona tantas variedades…

Meu ponto de vista:
Os Sistemas Operacionais da Apple e a Microsoft visam continuar construindo seus impérios junto das grandes empresas.
Os Sistemas Operacionais do mundo Linux são como ONGs (Organizações Não Governamentais) onde a comunidade se ajuda a evoluir.
Agora tem um Sistema Operacional que é o meio termo entre Apple, Microsoft e Distros Linux, o Android (Que é uma Distro Linux, pois ela vem do Kernel Linux como o Arch, Gentoo, Debian, etc…). Ela tem o apoio de desenvolvedores, comunidades, grandes empresas e usuários.

São estratégias diferentes. Tudo depende de nossos gostos e necessidades.

Eu gosto de contar histórias rsrs.
Quando eu estava com dificuldades em encontrar um emprego, eu tive de me desfazer de muita coisa, mas isso me ensinou a ser mais adaptável e resiliente.

Hoje sou usuário do Android mas, pergunte se eu tinha essa vontade quando eu estava empregado?

Eu queria manter meu Sistema Operacional próprio, compilado especialmente para meu ex laptop (Thinkpad T450) personalizado do meu jeito (um tipo de Sistema Operacional Full Cloud, minha DE era o Firefox full customizado por mim para ficar com cara de Desktop) construído a partir do Gentoo e sua comunidade.

O desemprego não me deixou continuar com meu projeto e eu fui pensando em estratégias para poder ter um computador capaz de ser super econômico e ao mesmo tempo um Sistema Operacional com poder de fogo. Em pesquisas e análises eu encontrei o Samsung Galaxy Tab S5e com Android 11. Eu pensei “Um smartphone consome pouquíssima energia, tem uma autonomia monstra (comparado a PCs e Laptops) e o Android tem um poderio de fogo muito bom.” Então fiz a troca, passei meu T450, uma TV LED 3D 42 pol, um Smartphone Moto G8 Play e mais um $$, e peguei o S5e, headphone, teclado, mouse bluetooth e um stand com armadura para o S5e ficar como um monitor de PC. Usei ele com Desktop e Smartphone por um bom tempo. Hoje tenhos dispositivos separados para mobile e desktop.

Foi fácil eu me adaptar? Claro que não, eu tive de me reinventar a usar computador, o formato de digitar e combinações de teclas eram muito diferentes. A forma de navegar com o mouse era bem diferente. O jeito de acessar, trocar, paginar, usar Aplicativos, Programas, Software Android como se fossem Desktop Tradicional, bem diferentes… Bom a Samsung ajuda muito nisso, porque ela trabalha em soluções para deixar o Android dela com cara de Desktop. Eu acho que o Android mais apropriado para usar como Desktop é o Android polído pela Samsung. Como eu disse eu tenho 3, Asus, Motorola e Samsung.

Tudo isso foram várias lutas para me adaptar. Mas eu me adaptei e hoje eu tenho 3 Androids, 4, 10 e 11. Para o meu perfil hoje o Android é o Sistema Operacional mais perfeito que existe. Jogo games com joystick bluetooth, uso Gaming Cloud da Microsoft, assisto Fórmula 1 pelo F1 TV, estudo usando plataformas do meu serviço, Linkedin, tenho Youtube e YTMusic (agora mesmo estou curtindo Spice Girls em loop enquanto digito e reviso este texto aqui no Diolinux Plus).


Tela do S5e.

E tenho de dizer, a tela de 10 pols do S5e Super Amoled 2K @60hz é linda demais, especialmente no escuro. Eu nunca fico sem internet e energia elétrica… Se acabar a energia elétrica ele fica mais de 10 horas na bateria, se cair a internet fixa a móvel assumi. Olha o tanto de vantagens na minha opinião. Ainda tem a segurança, senhas, biometricas, facial, íris, etc… (Dependendo do modelo do computador).

Agora pergunta se eu tenho vontade de sair do Android? A resposta é clara, não. O Android me cativou tanto, mas tanto. Na verdade eu quero ter um ecossistema Android da Samsung com Smartphone e Tablets da linha S e Z. Fico imaginando ter um super gadget que pode ser mobile e desktop ao mesmo tempo. Já está quase assim meus Androids, só tenho de ajustar algumas coisas aqui e ali, mas com o ecossistema da Samsung daí acredito que será a perfeição para mim. Quem sabe um dia no futuro…

Mas será que no futuro eu irei continuar com o Android? Não sei, tudo depende de períodos, gostos e necessidades de cada um de nós.

Qual é o pior e o melhor Sistema Operacional do Mundo? Não existe… Cabe a nós mesmo responder para nós mesmos do nosso próprio jeito.

Retrocompatibilidade, Portabilidade? Depende de cada um de nós.

Peace :v:t2:.

:vulcan_salute:t2:

nao entendi isso,se o proprio windows muda e tem varias versões pra windows diferentes,qual seria o problema de nao ter uma pra linux,e basicamente so disponibilizar um deb e instalar o aplicativo

Existem distros LTS com vários anos de suporte e existem snaps, flatpaks e AppImages. Você está querendo o que além disso?

O que o colega ta tentando explicar e que a Adobe por exemplo tem um software com o codigo de 2006 rodando em versões atuais com outra “cara”
Esse tipo de empresa e preguiçosa demais pra ficar portando multi-versões se não rola um empurrão financeiro(com a Apple faz) pra portar os apps sempre que quebrar uma API

2 curtidas