Introdução
Recentemente estive experimentando o Linux Mint e o Ubuntu, e também tentei alguma distro Linux há alguns anos. Naquela época eu não me interessava por programação, só gostava de mexer nas coisas, e sempre ando com um USB com Puppy Linux comigo. Eu realmente tento, mesmo agora que sou mais capaz de programar, e dou mais uma chance — mas me pego sempre voltando ao Mac, ou ao Windows.
Atualizado em 6 de maio de 2025:
A primeira parte é para iniciantes em programação. Se você já está familiarizado com programação, pule para esta seção para ler a opinião de um colega programador.
Começando a Aprender Programação
Conclusão
Use Mac — e eu vou te contar o porquê com base na minha experiência.
Por Que Não Linux
- Dificuldade
O Mac é um sistema operacional de nível consumidor, o que significa que muitos de seus recursos e interfaces são muito amigáveis. A maioria dos aplicativos tem um instalador para você baixar, clicar, instalar e pronto.
O Linux, por outro lado, é em grande parte baseado em texto se você quiser fazer qualquer coisa com o seu PC. Não acredite em quem diz que o Linux Mint é muito parecido com o Windows. Até certo ponto é, mas se você quiser instalar qualquer coisa que não venha embutida ou disponível no gerenciador de software (e você vai querer), precisará descobrir todos os “comos”, pesquisar e testar os comandos que as pessoas disseram que funcionaram para elas, mas que podem não funcionar para você — só para instalar um programa simples que está disponível no macOS e no Windows com um clique.
- Consome Tempo
Continuando o ponto anterior, se você tentar instalar algo, vai precisar gastar muito tempo mexendo. Principalmente encontrando as alternativas com as quais você estava familiarizado no Windows ou no Mac que não estão disponíveis no Linux. Isso parece ótimo, porque você trabalha com código usando o Terminal na maior parte do tempo, mas a questão é que você pode usar todo esse tempo para construir algo com código, como JavaScript, React, SQL, Python, etc. O código que você usa no trabalho ou para construir um site ou um aplicativo. Não estou dizendo que você não vai usar bash, só que não é necessário.
- Tropeços do SO
Se você comprou um dispositivo que já vem com Linux de fábrica, ótimo. Se você instalar uma distro Linux em um dispositivo que originalmente roda Windows ou Mac, provavelmente vai enfrentar alguns tropeços ao rodar o SO. Há chances de o SO funcionar bem, mas sempre tem algo aqui e ali que você precisa corrigir. Para citar alguns — talvez o Zoom congele ocasionalmente, talvez o brilho do teclado não funcione no seu notebook, Wi-Fi mais lento, etc. Porque os kernels e drivers do Linux são em grande parte contribuídos pela comunidade, o que é ótimo, mas também significa que eles não têm responsabilidade pelo seu notebook, e você tem que descobrir o porquê e o como por conta própria, usando código. Muitas vezes, esses problemas são causados por incompatibilidade de hardware com a distro Linux.
- Comunidade
As principais distros Linux, como Ubuntu e Linux Mint, têm a maior base de usuários. Se você está começando a usar Linux, é fortemente recomendado que escolha uma das duas, porque mais usuários significa mais soluções para problemas. No entanto, o Mac tem muito mais suporte do que o Linux. Seja no site da Apple ou você pode encontrar a solução precisa para o seu modelo de MacBook com muito mais facilidade.
- Aprender Programação
Muitos dos tutoriais de programação são feitos para Mac e Windows, e mesmo que na maioria das vezes trabalhemos no VSCode, você ainda precisa interagir com o terminal do SO para alguns ajustes, e o Linux simplesmente funciona de forma um pouco diferente. Você sempre pode encontrar soluções e alternativas para o seu problema, mas, de novo, essas coisas não são necessárias de saber se, digamos, você só quer ser um desenvolvedor front-end.
- PC Pessoal
Para mim, o Mac é um PC pessoal, o Linux não é. Muitos dos recursos embutidos no Mac são muito fáceis de usar e altamente valorizados, especialmente se você tem um iPhone: você pode copiar e colar entre seus dispositivos Apple, usar o AirDrop, etc.
- Versatilidade
Você pode fazer tudo no Mac que faz no Linux, mas não o contrário. Por exemplo, se você quer construir um aplicativo móvel para iOS, o Xcode está lá para você. Se você quer usar o VSCode, é claro que ambos também oferecem isso. Se você prefere a linha de comando, o Mac também oferece terminal.
Conclusão para Iniciantes
O Mac é indiscutivelmente mais robusto, versátil, confiável sem precisar mexer em nada e direto para suas necessidades de programação, bem como para suas necessidades pessoais. Só posso sugerir que você use Linux se simplesmente não gostar da Apple ou de dispositivos caros. Mas, de novo, você sempre pode comprar um MacBook usado. Vale a pena comprar um MacBook só para não usar Linux. Haha, eu sei que sou suspeito.
De qualquer forma, desejo sucesso a você.
Bons códigos.
Parágrafos extras para o programador experiente
O que escrevi acima é para quem não tem experiência prévia ou tem pouca experiência em programação. E meu ponto principal é que o macOS é mais direto para dar o pontapé inicial a qualquer pessoa que esteja aprendendo programação e, ao mesmo tempo, um Mac pode cuidar das suas necessidades pessoais. Se houver muitos obstáculos, isso pode desanimar os aprendizes, o que pode levar à desistência.
No entanto, se você está confortável com programação, as coisas podem ser diferentes.
A parte a seguir será mais técnica…
Então, você está familiarizado com programação e acostumado com Linux, qual você deve realmente escolher?
Pessoalmente, ainda prefiro um MacBook da série M a outras máquinas, e fiz muita coisa nos últimos anos neste MacBook Air M2.
Em termos de hardware, é um dispositivo rápido e estável, com bateria excelente, trackpad incrível, teclado silencioso, tela decente, dispositivo silencioso e alto-falante embutido.
Em termos de software, tem sido livre de complicações, funcionando suavemente, e consigo qualquer software no meu Mac com muita facilidade, seja apenas um download ou com brew.
Admito que comecei a aprender programação com um MacBook Air 2015 antigo, e continuei no caminho do MacBook desde então. Mas é principalmente por causa de fazer apps para iOS. Se você não está interessado em fazer apps nativos da Apple, não precisa comprar um Mac. O que leva ao primeiro ponto a seguir.
Que tipo de programação você faz?
Apps Móveis; Apps Apple
Você quer fazer apps nativos para dispositivos Apple? Se sim, compre um Mac. A palavra nativo é crucial aqui, porque tecnicamente você pode escrever apps para dispositivos Apple usando React Native com Expo, que tem um compilador na nuvem para fazer a compilação do Xcode para você. Então, você pode usar uma máquina Linux ou Windows para programar e enviar para a nuvem do Expo para compilar para você. No entanto, na realidade é sempre muito melhor simplesmente comprar um Mac, mesmo que antigo. Compilar localmente permite que você supervisione seu código, tornando as mudanças muito mais fáceis e diretas.
Se, digamos, você faz principalmente sites ou servidor backend, você pode comprar qualquer computador que quiser, até Windows. Não há exigência gráfica para tais tarefas de programação, então um Lenovo ThinkPad antigo pode fazer isso muito bem.
Você não precisa se preocupar com apps Android. Você pode programá-los em qualquer plataforma de qualquer forma.
Jogos
No entanto, se você faz programação de jogos ou tem necessidade de rodar ou construir modelos de linguagem/aprendizado de máquina, é aconselhável comprar um PC potente com Windows/Linux em vez de Mac. Você terá mais retorno pelo seu dinheiro. Sem falar que o desempenho do Unreal Engine 5 é inferior em comparação com um computador Windows na última vez que verifiquei, porque ele simplesmente ainda não está otimizado para Apple Silicon.
A menos que você esteja programando em Godot ou Unity. Um MacBook também é bom o suficiente para essas engines de jogos leves.
Software
Docker
Usar Docker é fácil, você tem o Docker Desktop para macOS com um .dmg. Clique duas vezes para instalar e pronto.
Postgres Local
Postgres.app é a mesma coisa, moleza.
Simulador
Você pode ter um simulador de iPhone ou iPad em um MacBook, independentemente do framework de programação. Flutter, React Native, SwiftUI, etc., seja o que for, funciona no MacBook. Você também pode instalar Linux no UTM para rodar Ubuntu no seu Mac, mas não o contrário.
Editor de Código
Bem, todo IDE está em toda plataforma hoje em dia.
Conclusão Definitiva
Então, a pergunta-chave a se fazer é esta: você quer fazer apps móveis para dispositivos Apple ou não?
Você terá que comprar um MacBook só para ter uma experiência completa de desenvolvimento de apps Apple, mesmo que esteja usando um framework multiplataforma. Isso simplesmente tornará a vida muito mais fácil.
Não gosto do jardim murado da Apple e do preço desnecessário para armazenamento extra, mas eles fazem ótimos produtos.
O que sugiro que você faça é: se você tem apenas um PC Windows agora, instale um Ubuntu ou até mesmo Linux Mint para ver se gosta. Se gostar, continue usando até realmente precisar de um Mac.
Também sou defensor de comprar o computador que você realmente quer. Ele pode fazer você querer trabalhar, só porque o dispositivo em si é agradável de usar.
Notas Adicionais
Mais sobre Apps Apple
Algumas coisas a ter em mente antes de decidir:
- Apenas um MacBook que roda o SO mais recente pode desenvolver com a API Apple mais recente
- Por exemplo, coisas como IA só podem ser desenvolvidas em Mac com Apple Silicon.
- O Vision OS só pode ser desenvolvido em Mac com Apple Silicon.
- Aprendizado de máquina só pode rodar em um dispositivo físico, não em um simulador. - Você precisará de um iPhone/iPad para testar seu app se tiver implementado um modelo de aprendizado de máquina no dispositivo. Ele simplesmente travará se você tentar rodá-lo em um simulador de iPhone.