Estou procurando o melhor sabor do Linux que agrade ao meu lado do desenvolvedor. Eu sou um amante de código aberto e uso vários idiomas diferentes.
Existe um Linux voltado para desenvolvedores?
Estou procurando o melhor sabor do Linux que agrade ao meu lado do desenvolvedor. Eu sou um amante de código aberto e uso vários idiomas diferentes.
Existe um Linux voltado para desenvolvedores?
Respostas:
Na prática, todas as distros usam praticamente a mesma cadeia de ferramentas de desenvolvimento, portanto não diferem significativamente como uma plataforma para o trabalho geral de desenvolvimento. Alguns, no entanto, têm vantagens específicas que podem ser relevantes para certos tipos de trabalho de desenvolvimento:
As distros comerciais (RHEL, SLES) têm o melhor suporte de fornecedores de código fechado de terceiros. Se você deseja trabalhar com (digamos) Oracle, pode ser melhor usar um deles, embora o Oracle possa funcionar com a maioria das distribuições se você instalar as bibliotecas corretas. O CentOS é compilado a partir de fontes RHEL e funcionará bem com a maioria, se não com todos os softwares comerciais criados para RHEL.
Se você quiser mexer, tente o Linux From Scratch. É um bom tutorial sobre como uma distribuição linux se mantém unida.
Se você quer algo para o qual praticamente tudo que é ou já foi de código aberto está disponível nos repositórios, uma distribuição baseada no Debian (Debian ou Ubuntu) pode ser uma vitória. Há uma razão pela qual a Canonical escolheu o .deb para usá-lo como sistema de gerenciamento de pacotes para o Ubuntu.
Se você deseja ajustar tudo no n-ésimo grau, o Gentoo permite que você reconstrua todo o sistema para sua arquitetura específica de processador.
Se você quer uma experiência 'tradicional do unix', pode experimentar o Slackware ou o FreeBSD (que não é uma distribuição Linux, mas pode ser de interesse do OP). Além disso, a família BSD é particularmente forte em redes, por isso pode oferecer vantagens sobre o Linux para desenvolvedores que trabalham neste campo.
Dessas, usei o CentOS, Debian, Fedora, Ubuntu, Slackware e FreeBSD em vários momentos no passado, além de alguns outros (Vector, SLS, Yggdrasil e versões variadas do Redhat a partir do 4.0). Como um ambiente de desenvolvimento 'unix', todos eles ofereceram as ferramentas da época e poderiam ter sido usados para o trabalho de desenvolvimento com o conjunto de ferramentas ou baixando e construindo o que mais você precisasse.
O Unix já foi descrito como um IDE mascarado como um sistema operacional, ou palavras para esse efeito. Qualquer variante unix ou linux pode oferecer a experiência do desenvolvedor unix, se você desejar. Em um ponto, eu realmente não me importo muito com o meio ambiente. Eu realmente apenas usei o gerenciador de janelas para abrir janelas xterm e iniciar alguns aplicativos; todo o resto foi praticamente feito a partir da linha de comando. A maioria das variedades de unix ou linux pode fazer isso.
Se você gosta de C, vim ou emacs com ctags, make e gcc funcionam muito bem; você pode usar o gdb com ou sem um frontend. Essa cadeia de ferramentas também fornece um bom suporte para linguagens como perl ou python e vem com um rico ecossistema de suporte de ferramentas de terceiros.
Para um fluxo de trabalho mais GUI, ele se resume a uma escolha pessoal de gerenciador de janelas, ambiente de desktop e ferramentas de desenvolvimento. Se você gosta de Java, o Eclipse e o netbeans são construídos na maioria das principais distribuições. Existem vários IDEs convencionais com suporte para C / C ++, perl, python e outras linguagens de script. Isso pode ser feito para funcionar na maioria das distros do Linux, se não em todas. O Java é suportado apenas no BSD por meio de portas de terceiros, então você provavelmente estará melhor com o linux se estiver trabalhando com isso.
Existe um Linux voltado para desenvolvedores?
Sim. Chama-se Linux.
O Fedora (ou qualquer derivado da Red Hat) é tão bom quanto qualquer Debian, Slackware, Gentoo ou qualquer outra coisa. Sério, você pode desenvolver com qualquer distribuição importante; é uma pergunta boba pedir um Linux "orientado ao desenvolvedor".
Também é bobagem dizer que qualquer uma dessas distribuições é melhor que as outras para os desenvolvedores. Isso não é sério.
Esta questão realmente implora por argumentos.
Eu tentei algumas distribuições porque realmente gosto de fazê-lo.
Sou desenvolvedor e também me perguntei sobre um bom Linux para desenvolvedores. Na minha experiência, não existem distribuições Linux voltadas especificamente para desenvolvedores.
O motivo é que, como desenvolvedor, você não apenas poderá personalizar qualquer distribuição para atender às suas necessidades, mas também precisará definitivamente saber como fazer essa personalização.
Então, basicamente, se você não estiver familiarizado com o Linux:
1) Debian, porque muitos servidores Web de produção estão executando o Debian, então provavelmente é uma boa idéia conhecer como as máquinas Debian estão organizadas. O lado bom do Debian é que, como é definitivamente o Linux mais amplamente usado (incluindo derivados como o Ubuntu), o suporte, a comunidade e o número de pacotes pré-compilados disponíveis são extremamente extensos. O lado ruim do Debian é que ele é voltado para um ambiente de produção estável e, como tal, raramente oferece as últimas novidades que você pode querer experimentar como desenvolvedor.
2) O Arch-Linux (ArchBang, na verdade) é o meu favorito atual por 3 razões: - Ele não fornece muito em termos de instalação e configuração fáceis com um clique, mas possui um ótimo tutorial para ajudá-lo a configurar tudo como você Se você quiser, essa abordagem permite que você aprenda muito sobre como as coisas funcionam em segundo plano e significa que, durante o tempo em que você tiver configurado tudo corretamente, você estará se sentindo muito à vontade usando um sistema Linux / Unix. - É um lançamento contínuo, o que significa que você nunca precisará baixar a nova versão e reinstalar tudo, basta atualizar o sistema e o Voila! - Ele tenta implementar todas as últimas novidades, para que você esteja sempre atualizado com as novas melhorias do software e como um desenvolvedor realmente apreciável. -Ah, e tem uma ótima comunidade também.
De qualquer forma, basicamente depende de você experimentar algumas coisas e decidir o que funciona melhor para você, o que posso garantir é que, independentemente do Linux que você acabar vinculando, sempre há uma maneira de configurar / personalizar as coisas ao seu gosto, então o importante é aprender como fazer essa personalização e, em seguida, você escolhe algo que já está pré-configurado o mais próximo possível do que deseja terminar.
Há cada vez mais sabores diferentes nas distribuições Linux - por exemplo, distribuições como Qimo ou DoudouLinux, orientadas para crianças.
É claro que você pode alterá-las para atender às suas necessidades (estamos falando sobre Linux, certo:]), mas ainda assim, você perderá muito tempo.
Alguns argumentam que é uma ótima maneira de aprender coisas novas. No entanto, você terá que levar algum tempo para cavar a distribuição e ajustar as coisas de qualquer maneira, é inevitável em qualquer distribuição.
Mas o mais importante são os pacotes.
Alguns traz para você novos (por exemplo: Arch) e outros muito estáveis (por exemplo: Debian).
A documentação também varia muito, quanto ao suporte de hardware (drivers, drivers, drivers!).
Considerando esses 3 pontos (pacotes, documentação, drivers) e suas próprias habilidades, você deve dedicar algum tempo para descobrir algumas distribuições principais.
Um bom começo pode estar aqui: http://distrowatch.com/
O Fedora é um dos primeiros a adotar novas tecnologias, permitindo que você experimente e desenvolva com elas meses antes de estarem disponíveis na maioria das outras distros. Ele suporta muitas linguagens de programação e bibliotecas prontas para uso e torna relativamente fácil adicionar ao seu sistema as que estiverem faltando. Ele tem uma filosofia pura de código aberto, optando por permitir que terceiros forneçam pacotes para recursos contrários a isso. Apenas não o chame de "Fedora Core" (ele perdeu o "Core" após a fusão do Core e Extras para o Fedora 7).
Penso que, com base na minha própria experiência e nas respostas aqui, você está procurando mais um conjunto de aplicativos e ferramentas que tornarão o desenvolvimento mais fácil e prático.
O legal do Linux é que qualquer distribuição é muito fácil de personalizar. Eu recomendo que você encontre uma lista de softwares que você usa com mais frequência durante o desenvolvimento e faça um tarball grande que você pode trazer de um computador para outro (se você alternar muito os espaços de trabalho).
Para o desenvolvimento Java / Eclipse, considere o Debian sobre o Ubuntu / Linux Mint (e possivelmente até 32 bits acima de 64 bits).
Antecedentes: Estou desenvolvendo Java / Eclipse RCP * e usando o Ubuntu e o Linux Mint, mas encontrei todos os tipos de bugs irritantes, relacionados a instabilidades no ambiente de área de trabalho (Cinnamon on Linux Mint) ou um procedimento um pouco complicado para instalar o Sun Java6 JDK (que é usado pelo nosso projeto ... O Ubuntu / Linux Mint é fornecido apenas com o OpenJDK em seus repositórios).
Recentemente, iniciei o Debian 6 Squeeze em uma máquina virtual e percebi como essas coisas estavam funcionando muito melhor. A instalação do Sun Java requer apenas a adição da palavra-chave "non-free" após a cadeia principal do repositório em /etc/apt/sources.list e a instalação via apt-get, e a área de trabalho (Gnome2) fornecida com ela também é muito mais estável do que as alternativas Gnome3 / Unity / Cinnamon no Ubuntu / LinuxMint.
[*] Eclipse RCP significa que você usa o Eclipse não apenas como uma GUI, mas também como uma biblioteca para criar sua própria GUI, mais ou menos.
O Ubuntu é ótimo, sério.
Eles têm todos os pacotes, atualizados e fáceis de instalar. Use a configuração padrão (= Gnome) e você passará a maior parte do tempo programando e não configurando.
A instalação do conjunto de compiladores gcc, make, autoconf etc. leva 5 minutos com uma conexão decente à Internet. Mais trinta minutos e você tem Ruby, Python, Sun JVM e Eclipse prontos para execução.
Edit: O Ubuntu oferece pacotes extras com símbolos de depuração para muitas bibliotecas. É bom ter para desenvolvedores de C / C ++.
A resposta é que não existe um bom Linux para desenvolvimento, a menos que você crie um e nenhum outro Linux realmente forneça tanto nessa área quanto o gentoo. Você compila tudo da fonte (algo com o qual você deve se dedicar mais para ser um desenvolvedor. O processo de instalação ensina mais sobre o sistema do que qualquer outra distribuição, respondendo a muitas perguntas que você terá ao criar aplicativos.
A melhor parte é que você pode escolher o tipo de programa que deseja desenvolver. Se você deseja java, instale o javac ou gcj ou ambos. O apoio da comunidade é como nenhum outro, por isso, se você tiver perguntas, elas serão respondidas ou o levarão para onde você precisa encontrar a resposta.
Todo IDE que você pode pensar está disponível para "emergir" / instalar no gentoo. Embora não seja incrivelmente fácil de instalar ou "simples" de entender, nether está programando e se você não pode instalar uma cópia do gentoo, eu não gostaria de executar seus programas na minha máquina. A maioria das dificuldades que as pessoas têm para instalá-lo é derivada da falta de conhecimento fundamental do Linux. Eu prometo que você vai gostar depois de ter tudo configurado do jeito que você gosta.
Depois de instalá-lo, você pode fazer um tar novamente e colocá-lo em qualquer computador para o qual tenha tempo de reconfigurar um kernel ou restaurá-lo quando as coisas ficarem fora de controle.