Por que utilizar Linux para desenvolvimento?

71 respostas
H

Olá pessoal,

Inicialmente quero dizer que não é intenção do tópico criar uma flamewar sobre qual o melhor SO.

Já trabalho com desenvolvimento JAVA a 4 anos e tendo passado por várias empresas nunca precisei de um conhecimento mais avançado em Linux visto que os ambientes eram sempre Windows. Ultimamente como venho buscando estudar várias coisas novas comecei a me perguntar se saber linux me seria realmente útil ou se poderia continuar trabalhando no windows sem me preocupar, visto que quase todo desenvolvedor mais sênior que conheço utiliza linux ou macOS.

Então minhas dúvidas são: Qual a real vantagem de desenvolver utilizando um SO como linux? Vocês ganham em produtividade? Ou talvez ferramental? Se positivo, qual o nível de conhecimento que um desenvolvedor deveria ter sobre linux a ponto de não precisar ser um administrador de sistemas? E o macOS também é válido?

Abraços pessoal!!!

71 Respostas

M

Poder falar que não usa software pirata.

E

Bom, aqui onde trabalho era uma “Windows-shop” mas devido ao fato de termos comprado um sistema gigante que usa Java e Linux, o departamento teve de aprender Linux na marra. (Como estou trabalhando com a parte C++ que não foi migrada para o Linux, infelizmente tenho de lidar com as manias do Windows ainda :frowning: )

De modo geral, é interessante você aprender pelo menos os conceitos básicos do Linux, mesmo que no dia-a-dia você acabe desenvolvendo em Tomcat no Windows você eventualmente terá de efetuar o deploy em WebSphere ou WebLogic no Linux (que é o que ocorre em muitos sites grandes que usam Java - o servidor roda em Linux e raramente em Solaris; nunca vi um servidor rodando Mac OSX Server :frowning: ) e entender as diferenças básicas entre o Windows e o Linux.

Ajuda bastante você instalar o Cygwin na sua máquina :slight_smile: - desenvolvedor que se preze tem de saber usar o grep e o awk :slight_smile:

T

Eu trabalho no linux (Ubuntu) com desenvolvimento java, na epoca
eu percebi que as ferramentas que eu utilizava eram executadas mais rápido que no windows
no começo foi dificil a mudança de um para outro

Hoje só uso linux nem windows tenho mais na máquina só se for para joga

Pq pra min linux: hoje vc tem acesso a muitos programa open source voltado para linux e claro windows tbm,
linux deixou a muito tempo de ser um sistema dificil para uso inicial…
o terminal do linux é animal eu gosto de fica fazendo algumas coisas por ele.

E outra para usar o linux é bom dar uma estudada em alguns comandos básicos mas nao precisa mais do isso

Se eu estiver errado podem me corrigir!!

Para desenvolvimento vá de Ubuntu essa distribuição tá animal

K

Linux é ótimo pra desenvolvimento, você tem uma série de ferramentas bacanas pra sua linha de comando e tudo mais.
Só tem um problema na minha opinião. Uma vantagem do Linux na prática pra mim é algo bastante bobo: o fato de possuir um sistema de arquivos que é case sensitive: assim eu consigo evitar uma série de problemas que costumam ocorrer quando, por exemplo, usamos o Windows como máquina de desenvolvimento e o Linux como máquina de produção. Como disse, é um motivo muito bobo.

Se você trabalha com web, não há como negar o fato de que existe uma criatura lá fora chamada Internet Explorer, contra a qual você se verá de tempos em tempos obrigado a enfrentar quando for testar seus sistemas. Sim, é verdade que você pode incluir uma máquina virtual no seu computador e com ela iniciar o IE e tudo mais. Mas ai entra a seguinte pergunta: será que não é trabalho demais pra algo que deveria ser trivial? Eu uso uma máquina Windows para desenvolvimento basicamente por causa disto. Já tentei desenvolver sistemas ignorando o IE arrebitando meu nariz pra ele. Mas sabe o que acontecia? Eu estava prejudicando meus clientes.

Sim, pode até existir aquela falsa impressão de que se você evitar que seu cliente use o IE você o estará beneficiando. Mas sabe qual é a verdade? Quando fazemos isto acabamos por tirar deste o direito da escolha, o que é ruim para os negócios.

W

Eu usei Linux por uns 8 anos como meu sistema padrão. Agora estou usando Windows devido a umas incompatibilidades com meu novo notebook. :stuck_out_tongue:

Prefiro o Linux por alguns motivos:
O terminal é bem mais avançado, o que dá um ganho muito grande em produtividade.
Eu gosto do estilo dos programas no Linux, normalmente são mais simples e funcionais (nem todos, claro).
O sistema de pacotes, presente na maioria das distribuições, agiliza muito. É muito melhor do que ter que ir procurar programas nos respectivos sites.
Pra programar com Ruby, node.js, python eu acho que é bem melhor. Fico meio perdido no Windows… sem falar que em alguns casos demora muito mais pra chegar as versões pra windows destas linguagens.

A única coisa que me incomoda é trabalhar com Flex. Aí não tem jeito, no Linux fica uma droga. Outro ponto que as vezes me incomoda no Linux é de alguns drivers não funcionarem tão bem.

Eu acredito que seja fundamental para um bom desenvolvedor entender sobre Linux. Primeiro por que vai ver algo diferente de Windows e, neste processo, vai aprender muito. Segundo por que normalmente o que desenvolvemos vai pra produção em servidores Linux. :smiley:

Falou.

H

Obrigado pelas respostas pessoal, ainda sobre o ganho de produtividade escuto muito falar sobre o ganho de produtividade com o bash. O que exatamente vocês fazem no bash que acaba ganhando na produtividade?
Outra duvida é: ok, comecei a usar linux, o que preciso aprender do SO como desenvolvedor já que trabalho puramente no desenvolvimento e nao como administrador?

Abracos,

Hugo

A

Uso os 2 para desenvolvimento, tanto no meu desk(phenom X3) quanto no note(i5) sinto muito mais agilidade no linux(Ubuntu 12.04), os programas fluem melhor.
As facilidades da “central de programas” e o APT-GET me agradam muito. Terminal do linux é muito util.
Brinquei um pouco com ruby, nesse o linux ganhou de 10x3 do windows, no WIN fica muito lento pra rodar os caomando do rails e levantar o webserver.
C# uso o windows mesmo ( Ainda não aceitei a ideia do MONO)
No caso do casesensitive é uma grande vantagem usa linux, mas se o dev tomar cuidado não é problema usar windows.
Linux tem de aprender o basico do SO e aprender a fazer as instalações e configurações. Com o tempo vai expandindo o conhecimento sobre o SO.
Na verdade acho melhor vc usar o SO que sente melhor, eu particularmente prefiro linux , gosto de saber o que ta acontecendo no meu SO e gosto de poder atuar nele.

Use os 2 e tire as conclusões!

Abraços

C

Eu atualmente só utilizo linux, gosto dele pela liberdade propiciada, por exemplo:

Até algum tempo atrás eu desenvolvia somente com J2SE e swing, então possuía uma maquina modesta para tal, até que comecei a trabalhar com android, então precisei ganhar desempenho, para não precisar trocar de maquina, mudei de KDE para XFCE e tive um ganho de desempenho sem muita dor de cabeça…

Além do que ambiente novos do Linux como Gnome3 e Unity, apesar de odiados por muitos por sua quebra de paradigma, após um determinado tempo se mostram ambiente altamente produtivos, devido as suas peculiaridades. A instalação e atualização de softwares também é algo simples, dependendo da distribuição, devido aos gerenciadores de pacotes como apt e pacman.

E normalmente os servidores utilizados são linux, e como bem sabemos existem pequenas divergências entre ele e o sistema da M$, logo, utilizando linux você evita problemas de sincronia entre ambiente de desenvolvimento e produção.

Por fim existem fatores que eu particularmente relevo, e muito, que é o conhecimento adquirido, perder medo de terminal, aprender a configurar certos arquivos, e se acostumar com a liberdade de poder fazer o sistema do forma que você preferir.

K

cleciusjm:
Eu atualmente só utilizo linux, gosto dele pela liberdade propiciada, por exemplo:

Até algum tempo atrás eu desenvolvia somente com J2SE e swing, então possuía uma maquina modesta para tal, até que comecei a trabalhar com android, então precisei ganhar desempenho, para não precisar trocar de maquina, mudei de KDE para XFCE e tive um ganho de desempenho sem muita dor de cabeça…

Além do que ambiente novos do Linux como Gnome3 e Unity, apesar de odiados por muitos por sua quebra de paradigma, após um determinado tempo se mostram ambiente altamente produtivos, devido as suas peculiaridades. A instalação e atualização de softwares também é algo simples, dependendo da distribuição, devido aos gerenciadores de pacotes como apt e pacman.

E normalmente os servidores utilizados são linux, e como bem sabemos existem pequenas divergências entre ele e o sistema da M$, logo, utilizando linux você evita problemas de sincronia entre ambiente de desenvolvimento e produção.

Por fim existem fatores que eu particularmente relevo, e muito, que é o conhecimento adquirido, perder medo de terminal, aprender a configurar certos arquivos, e se acostumar com a liberdade de poder fazer o sistema do forma que você preferir.

Oi cleciusjm, eu tive bastante dificuldade com o Unity. No seu caso, quais foram os ganhos que ele trouxe pra você?

A

Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).

C

kicolobo:
cleciusjm:
Eu atualmente só utilizo linux, gosto dele pela liberdade propiciada, por exemplo:

Até algum tempo atrás eu desenvolvia somente com J2SE e swing, então possuía uma maquina modesta para tal, até que comecei a trabalhar com android, então precisei ganhar desempenho, para não precisar trocar de maquina, mudei de KDE para XFCE e tive um ganho de desempenho sem muita dor de cabeça…

Além do que ambiente novos do Linux como Gnome3 e Unity, apesar de odiados por muitos por sua quebra de paradigma, após um determinado tempo se mostram ambiente altamente produtivos, devido as suas peculiaridades. A instalação e atualização de softwares também é algo simples, dependendo da distribuição, devido aos gerenciadores de pacotes como apt e pacman.

E normalmente os servidores utilizados são linux, e como bem sabemos existem pequenas divergências entre ele e o sistema da M$, logo, utilizando linux você evita problemas de sincronia entre ambiente de desenvolvimento e produção.

Por fim existem fatores que eu particularmente relevo, e muito, que é o conhecimento adquirido, perder medo de terminal, aprender a configurar certos arquivos, e se acostumar com a liberdade de poder fazer o sistema do forma que você preferir.

Oi cleciusjm, eu tive bastante dificuldade com o Unity. No seu caso, quais foram os ganhos que ele trouxe pra você?

Gosto de comparar o Unit e o Gnome 3 ao eclipse, inicialmente’e mais complexo, diferente(pra quem vem do netbeans) porém a medida que você vai se acostumando, nota que ao se trabalhar da forma como o ambiente foi projetado, temos ganhos grandes de produtividade. Eu tenho como ponto positivo do Unit suas teclas de atalho que dão uma agilidade incrível quando você se habitua com elas, visual clean, que te permite se concentrar mais no que está fazendo. Demorei pra me acostumar com ele, atualmente uso ele na empresa e Gnome 3 no laptop. E por fim temos a barra de busca, que é ativada com o toque em uma tecla e permite que com poucas ações se faça tudo o que deseja no SO, e praticamente sem utilizar o mouse.

Vejo o Unit como algo semelhante ao MacOS, bonito e produtivo, porém ainda pouco personalizável.

J

cleciusjm:
kicolobo:
cleciusjm:
Eu atualmente só utilizo linux, gosto dele pela liberdade propiciada, por exemplo:

Até algum tempo atrás eu desenvolvia somente com J2SE e swing, então possuía uma maquina modesta para tal, até que comecei a trabalhar com android, então precisei ganhar desempenho, para não precisar trocar de maquina, mudei de KDE para XFCE e tive um ganho de desempenho sem muita dor de cabeça…

Além do que ambiente novos do Linux como Gnome3 e Unity, apesar de odiados por muitos por sua quebra de paradigma, após um determinado tempo se mostram ambiente altamente produtivos, devido as suas peculiaridades. A instalação e atualização de softwares também é algo simples, dependendo da distribuição, devido aos gerenciadores de pacotes como apt e pacman.

E normalmente os servidores utilizados são linux, e como bem sabemos existem pequenas divergências entre ele e o sistema da M$, logo, utilizando linux você evita problemas de sincronia entre ambiente de desenvolvimento e produção.

Por fim existem fatores que eu particularmente relevo, e muito, que é o conhecimento adquirido, perder medo de terminal, aprender a configurar certos arquivos, e se acostumar com a liberdade de poder fazer o sistema do forma que você preferir.

Oi cleciusjm, eu tive bastante dificuldade com o Unity. No seu caso, quais foram os ganhos que ele trouxe pra você?

Gosto de comparar o Unit e o Gnome 3 ao eclipse, inicialmente’e mais complexo, diferente(pra quem vem do netbeans) porém a medida que você vai se acostumando, nota que ao se trabalhar da forma como o ambiente foi projetado, temos ganhos grandes de produtividade. Eu tenho como ponto positivo do Unit suas teclas de atalho que dão uma agilidade incrível quando você se habitua com elas, visual clean, que te permite se concentrar mais no que está fazendo. Demorei pra me acostumar com ele, atualmente uso ele na empresa e Gnome 3 no laptop. E por fim temos a barra de busca, que é ativada com o toque em uma tecla e permite que com poucas ações se faça tudo o que deseja no SO, e praticamente sem utilizar o mouse.

Vejo o Unit como algo semelhante ao MacOS, bonito e produtivo, porém ainda pouco personalizável.

O correto é comparar unity com gnome-shell, pois ambos estão rodando em cima do gnome3. Eu prefiro o gnome-shell porque o desktop se torna muito simplificado. Quanto ao unity, acho ele cheio de “pontos cegos” como é o caso daquela barra do lado esquerdo.

D

Alguns pontos que eu identifiquei nas vezes que desenvolvi em linux:
Pontos positivos:
1 - o SO é mais enxuto, o gerenciamento de memória, disco e outros recursos é melhor, portanto, mais rápido. Claro que isso é relativo e nem se pode dizer que "usando a mesma máquina… blá blá blá, pois as versões de aplicativos para Windows e Linux é que podem ter sido desenvolvidas com otimização para este ambiente.
2 - Se precisa de algo, um apt-get ou similar resolve o problema. A comunidade é muito ativa e facilmente se encontram respostas para praticamente tudo.
3 - O terminal (konsole) está anos-luz à frente do Windows. Downloads feitos por ele (vide sudo apt-get install), são muito mais rápidos.
4 - Se você cansar do KDE, pode optar pelo Gnome ou vice versa ou por outra interface gráfica (claro, vai precisar adaptar-se e alterar algumas coisas).
5 - Eu posso criar diretórios/pastas com o nome que eu quiser, sem ter problemas com o maldito “com”, por exemplo.

Pontos negativos (ou a melhorar):
1 - Leva um tempo até se acostumar com o uso de sudo su, aptitude e alguns comandinhos mais básicos.
2 - Nem todos os equipamentos possuem drivers e, os compatíveis, podem não permitir o bom uso do que se tem.
3 - Instalar e usar o Wine pode ser algo extremamente desagradável.
4 - Funciona no Chrome, no FF, mas só acessando pelo IE para saber.
5 - OpenJDK é default em algumas distros.
6 - Leva um tempo para acostumar-se com a estrutura de diretórios, permissões e tudo mais que envolve o SO do pinguim.

Enfim, eu uso Windows pois de todas as empresas pelas quais passei, nenhuma usava linux.

D

andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

N

Se for pra notebook esqueça Linux porque o gerenciamento de energia é uma bosta e a bateria vai embora rapidinho.

J

drsmachado:
andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

Em termos de “desempenho” de software o windows acaba sendo mais rápido por uma coisa:

  1. o kernel win não gerencia memória tão bem como o kernel linux(Porque o segundo desfragmenta e ordena a posição de memória dos programas). Isso implica em “execução mais rápida” e em maior erro dos programas.
    Lembra quando você precisava do defrag para corrigir o disco? O linux faz isso automaticamente mapeando a memória ram.
H

Sobre o gerenciamento de memória cheguei a instalar o Ubuntu 12.10 no meu note mas nao notei ganho de desempenho, muito pelo contrário, eu clicava no FF por exemplo e ele demorava alguns segundos pra abrir enquanto que usando o Windows 7 era automático.

Ainda sobre formatar a cada 6 meses, realmente isso ocorria na minha máquina quando usava WinXP mas depois que mudei pro 7 estou com meu note com ele instalado e rodando a 2 anos e só tô pensando em formatar agora pra ver se é o SO ou o hardware que anda capenga.

As grandes dúvidas que eu ainda tenho e que ainda não vi uma resposta convicente foi: qual o real ganho de produtividade com o bash do linux? Existe algum comando especial para automatizar as coisas? Alguma tarefa que vocês automatizam que não é possível/trivial no Windows?

E supondo que o desenvolvedor deva saber linux, o que ele deveria buscar conhecer? Pois existem muitas coisas que só serão realmente úteis caso se trabalha como System Admin, mas como developer o que eu deveria me preocupar em saber do linux? Sistemas de pastas? Permissões?

Valeu aí pessoal, estou achando o tópico bem produtivo.

Abraços!!!

D

HugoMarques:
Sobre o gerenciamento de memória cheguei a instalar o Ubuntu 12.10 no meu note mas nao notei ganho de desempenho, muito pelo contrário, eu clicava no FF por exemplo e ele demorava alguns segundos pra abrir enquanto que usando o Windows 7 era automático.

Ainda sobre formatar a cada 6 meses, realmente isso ocorria na minha máquina quando usava WinXP mas depois que mudei pro 7 estou com meu note com ele instalado e rodando a 2 anos e só tô pensando em formatar agora pra ver se é o SO ou o hardware que anda capenga.

As grandes dúvidas que eu ainda tenho e que ainda não vi uma resposta convicente foi: qual o real ganho de produtividade com o bash do linux? Existe algum comando especial para automatizar as coisas? Alguma tarefa que vocês automatizam que não é possível/trivial no Windows?

E supondo que o desenvolvedor deva saber linux, o que ele deveria buscar conhecer? Pois existem muitas coisas que só serão realmente úteis caso se trabalha como System Admin, mas como developer o que eu deveria me preocupar em saber do linux? Sistemas de pastas? Permissões?

Valeu aí pessoal, estou achando o tópico bem produtivo.

Abraços!!!


Você vai desenvolver, o que acha que precisa para isto?
Saber instalar aplicativos (vai precisar de IDE, de JDK).
Saber configurar as variáveis de ambiente (se for usar um AS, como JBoss ou o Maven, precisará indicar onde é o JAVA_HOME).
Saber analisar os processos em execução.
E tudo o que você rotineiramente usa no Windows.
Quando a bash, vai de você aprender e otimizar.
Há maneiras de automatizar o build e o deploy, locais e no servidor, por exemplo.

G

HugoMarques:
qual o real ganho de produtividade com o bash do linux? Existe algum comando especial para automatizar as coisas? Alguma tarefa que vocês automatizam que não é possível/trivial no Windows?

O shell do Linux é uma linguagem de programação completa, e tem utilitários de linha de comando para quase tudo que envolva manipulação de arquivos.

Se um dia aparecer aqueles casos tipo “procurar todos os arquivos que tenham XXX, trocar por YYY e renomear o arquivo para extensão .ZZZ, e gerar uma lista de tudo que foi alterado (no final restartar o serviço)”
Coisa que daria um trabalho manual filho da mãe, depois que vc tiver experiência em Shell faz em poucos minutos.

D

juliocbq:
drsmachado:
andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

Em termos de “desempenho” de software o windows acaba sendo mais rápido por uma coisa:

  1. o kernel win não gerencia memória tão bem como o kernel linux(Porque o segundo desfragmenta e ordena a posição de memória dos programas). Isso implica em “execução mais rápida” e em maior erro dos programas.
    Lembra quando você precisava do defrag para corrigir o disco? O linux faz isso automaticamente mapeando a memória ram.

A percepção que eu tenho é que o uso de memória virtual do Windows é extremamente inferior ao linux (talvez pela obrigatoriedade da partição de swap do segundo). Além do que, você só teria problemas de conflito com o SO caso precise acessar disco (salvar em banco de dados, por exemplo), devido à concorrência para acessar o recurso. Tirando isso, o auto defrag não seria problema, justamente pelo melhor gerenciamento da memória que o pinguim possibilita (afinal, um aplicativo em execução está em memória, não?), ou estou enganado?
D

gomesrod:
HugoMarques:
qual o real ganho de produtividade com o bash do linux? Existe algum comando especial para automatizar as coisas? Alguma tarefa que vocês automatizam que não é possível/trivial no Windows?

O shell do Linux é uma linguagem de programação completa, e tem utilitários de linha de comando para quase tudo que envolva manipulação de arquivos.

Se um dia aparecer aqueles casos tipo “procurar todos os arquivos que tenham XXX, trocar por YYY e renomear o arquivo para extensão .ZZZ, e gerar uma lista de tudo que foi alterado (no final restartar o serviço)”
Coisa que daria um trabalho manual filho da mãe, depois que vc tiver experiência em Shell faz em poucos minutos.


Além do que, tirando as distros windows-friendly, onde o mouse é meu senhor e em tudo clicará, você consegue fazer tudo pelo terminal.

G

E acrescentando à discussão dos prós e contras:

prós:

  • Aprender: Para desenvolvedores que não tem experiência na plataforma, é obrigatório passar algum tempo utilizando. Cedo ou tarde você terá que lidar com algum ambiente de servidor unix ou linux.
  • Utilitários de linha de comando, como já disse antes.
  • Interfaces gráficas muito legais, que vc ainda tem a opção de mudar quando enjoar, como alguem já disse aqui.
  • Sem custo com compra de SO e software.
  • Ser considerado o segundo cara mais maneiro da empresa (só perde para aquele que usa Mac)

contras:

  • Se estiver desenvolvendo software para usuário final, você não estará testando no mesmo ambiente que ele (Win + IE), o que pode trazer alguns problemas.
  • Microsoft Office. Podem falar o que quiser, mas as suites de escritório free não são compatíveis, fica tudo zuado. Para quem precisa trocar documentos com clientes isso é um impeditivo.
  • Algumas ferramentas ou softwares específicos que só tem para Windows
  • Só para constar: os tais travamentos frequentes do Windows são uma lenda urbana desde o windows 2000.

O que eu uso:
Windows (Além de os fatores que citei, é padrão da empresa) substituindo o uso do prompt padrão pelo Cygwin.

D

gomesrod:

  • Só para constar: os tais travamentos frequentes do Windows são uma lenda urbana desde o windows 2000.

Eu diria windows XP.
Quando muito, hardware ou driver de terceiro.
R

verdade que o linux pega virus dificilmente?

J

drsmachado:
juliocbq:
drsmachado:
andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

Em termos de “desempenho” de software o windows acaba sendo mais rápido por uma coisa:

  1. o kernel win não gerencia memória tão bem como o kernel linux(Porque o segundo desfragmenta e ordena a posição de memória dos programas). Isso implica em “execução mais rápida” e em maior erro dos programas.
    Lembra quando você precisava do defrag para corrigir o disco? O linux faz isso automaticamente mapeando a memória ram.

A percepção que eu tenho é que o uso de memória virtual do Windows é extremamente inferior ao linux (talvez pela obrigatoriedade da partição de swap do segundo). Além do que, você só teria problemas de conflito com o SO caso precise acessar disco (salvar em banco de dados, por exemplo), devido à concorrência para acessar o recurso. Tirando isso, o auto defrag não seria problema, justamente pelo melhor gerenciamento da memória que o pinguim possibilita (afinal, um aplicativo em execução está em memória, não?), ou estou enganado?

O kernel linux desfragmenta em “memória ram”, enquanto o kernel win não faz isso e aloca tudo sequencialmente. Por isso a execução em ambiente win é mais rápida(por precisar apenas alocar sequencialmente) que em linux.

O linux ganha em estabilidade porque organiza memória melhor que o windows.

D

Fato.
Que eu tenha informação, apenas um, que só conseguia se multiplicar dentro da própria pasta em que estava.

W

gomesrod:
E acrescentando à discussão dos prós e contras:

prós:

  • Aprender: Para desenvolvedores que não tem experiência na plataforma, é obrigatório passar algum tempo utilizando. Cedo ou tarde você terá que lidar com algum ambiente de servidor unix ou linux.
  • Utilitários de linha de comando, como já disse antes.
  • Interfaces gráficas muito legais, que vc ainda tem a opção de mudar quando enjoar, como alguem já disse aqui.
  • Sem custo com compra de SO e software.
  • Ser considerado o segundo cara mais maneiro da empresa (só perde para aquele que usa Mac)

contras:

  • Se estiver desenvolvendo software para usuário final, você não estará testando no mesmo ambiente que ele (Win + IE), o que pode trazer alguns problemas.
  • Microsoft Office. Podem falar o que quiser, mas as suites de escritório free não são compatíveis, fica tudo zuado. Para quem precisa trocar documentos com clientes isso é um impeditivo.
  • Algumas ferramentas ou softwares específicos que só tem para Windows
  • Só para constar: os tais travamentos frequentes do Windows são uma lenda urbana desde o windows 2000.

O que eu uso:
Windows (Além de os fatores que citei, é padrão da empresa) substituindo o uso do prompt padrão pelo Cygwin.

Em relação ao Office, eu uso uma ferramenta chamada Crossover que emula o Office (parece que por baixo dos panos ela ajust ao Wine pra tudo ficar bem). Usei bastante com Office 2003 e funcionou muito bem. Já instalei o Office 2007 com o Crossover mas não pode utilizar o suficiente pra dizer se era bom.

Fica bem mais lento, claro, mas deu pra fazer meu TCC “tranquilamente”. :smiley:

Quanto a ter que formatar windows de tempos em tempos, com o Seven isto melhorou bastante. Mesmo depois de muito tempo usando o desempenho não é degradado (pelo menos pra mim foi assim).

R

Fato.
Que eu tenha informação, apenas um, que só conseguia se multiplicar dentro da própria pasta em que estava.

Mas isso também não é nada que um anti-vírus e uma navegação cuidadosa não resolvam.

F

Fato.
Que eu tenha informação, apenas um, que só conseguia se multiplicar dentro da própria pasta em que estava.

Mas isso também não é nada que um anti-vírus e uma navegação cuidadosa não resolvam.
Cara desconfio da vercidade do que me disseram, mas me contaram que anti-vírus para Linux não adianta de nada pois nele só detecta vírus que possam afetar os sistemas Windows e Mac OS. É verdade?

H

No caso, qual distro vocês recomendariam? Instalei a Ubuntu 12.10 mas achei a interface bem pesada e com alguns defeitos (por exemplo a aba do lado esquerdo que as vezes clico sem querer). Lembro que na facldade eu usava o ubuntu mas era uma interface bem mais light.

N

Na verdade não faz muito sentido ter vírus para Linux, ou qualquer outro SO com menos de 1% de market share.

D

Na verdade não faz muito sentido ter vírus para Linux, ou qualquer outro SO com menos de 1% de market share.
Fonte?
Isso inclui servidores?
Afinal, um vírus ou spyware em um servidor seria interessante a quem o gerasse, para obter dados sigilosos.
De qualquer maneira, levando pelo lado “bom da força”, vírus não são interessantes sob nenhuma perspectiva.
Claro que foram fundamentais para identificar falhas de segurança, mas, além disso, só para propósitos excusos.

G

Bom saber disso… se ele fizer tudo que promete quem quiser abandonar o Windows para sempre pode fazer isso tranquilamente.
E o preço não é mau (U$59,00)

Mas o ideal mesmo seria as opções Free estarem à altura do office, assim ficamos livres de seu valor exorbitante (ou de viver na pirataria :frowning: ).

N

Afinal, vc quer um terminal UNIX ou interface gráfica bonita?

Se quer os dois, só usando MacOS mesmo.

L

gomesrod:
wagnerfrancisco:

Em relação ao Office, eu uso uma ferramenta chamada Crossover que emula o Office (parece que por baixo dos panos ela ajust ao Wine pra tudo ficar bem). Usei bastante com Office 2003 e funcionou muito bem. Já instalei o Office 2007 com o Crossover mas não pode utilizar o suficiente pra dizer se era bom.

Bom saber disso… se ele fizer tudo que promete quem quiser abandonar o Windows para sempre pode fazer isso tranquilamente.
E o preço não é mau (U$59,00)

Mas o ideal mesmo seria as opções Free estarem à altura do office, assim ficamos livres de seu valor exorbitante (ou de viver na pirataria :frowning: ).

Ou no meu caso viver do Office disponibilizado pela Microsoft no DreamSpark ^^

H

Afinal, vc quer um terminal UNIX ou interface gráfica bonita?

Se quer os dois, só usando MacOS mesmo.

Não precisa ser uma interface bonita, uma bem simples como essa que eu utilizava na faculdade já atende. Eu soube que houve uma mudança no Ubuntu recentemente com a interface Unity, pode ser que instalando uma interface gráfica antiga eu consiga usá-lo melhor.

N

drsmachado:

Fonte?
Isso inclui servidores?
Afinal, um vírus ou spyware em um servidor seria interessante a quem o gerasse, para obter dados sigilosos.
De qualquer maneira, levando pelo lado “bom da força”, vírus não são interessantes sob nenhuma perspectiva.
Claro que foram fundamentais para identificar falhas de segurança, mas, além disso, só para propósitos excusos.

Se você tem um alvo específico não seria mais fácil invaidir?

E

Frantic Avenger:

Cara desconfio da vercidade do que me disseram, mas me contaram que anti-vírus para Linux não adianta de nada pois nele só detecta vírus que possam afetar os sistemas Windows e Mac OS. É verdade?

Mais ou menos - suponha que você desenvolva sistemas em Linux que devem ser acessados em Windows e MacOSX.

Suponha agora que você esteja com aquele arquivo .png que você baixou via Transmission (o Bit Torrent para Linux) e que está realmente contaminado* - e por algum motivo ele também foi parar dentro de um jar que você vai disponibilizar para seus clientes.

Não seria interessante que antes de você disponibilizar o arquivo você o escaneasse para ver se não vai dar problema com os seus clientes que têm problemas com vírus?

  • Como vocês devem saber, alguns arquivos de imagens contém alguns erros propositais de codificação que forçam algumas versões bugadas de programas a explodirem e inserem código de vírus ou outras coisas piores. É por isso que os antivirus ficam cada vez mais lentos - até arquivos inocentes como aquelas imagens da Nicki Minaj que você baixou da Internet podem estar contaminados :frowning:
F

Valeu pelo esclarecimento :smiley:

L

HugoMarques:
Olá pessoal,

Inicialmente quero dizer que não é intenção do tópico criar uma flamewar sobre qual o melhor SO.

Já trabalho com desenvolvimento JAVA a 4 anos e tendo passado por várias empresas nunca precisei de um conhecimento mais avançado em Linux visto que os ambientes eram sempre Windows. Ultimamente como venho buscando estudar várias coisas novas comecei a me perguntar se saber linux me seria realmente útil ou se poderia continuar trabalhando no windows sem me preocupar, visto que quase todo desenvolvedor mais sênior que conheço utiliza linux ou macOS.

Então minhas dúvidas são: Qual a real vantagem de desenvolver utilizando um SO como linux? Vocês ganham em produtividade? Ou talvez ferramental? Se positivo, qual o nível de conhecimento que um desenvolvedor deveria ter sobre linux a ponto de não precisar ser um administrador de sistemas? E o macOS também é válido?

Abraços pessoal!!!

Depende…

Se vc for o tipo de usuario “faça vc mesmo” e tiver dó do seu dinheiro, vai de linux.
Mas se vc tiver mais dinheiro e menos tempo e paciência, vai de windows.

B

Eu recomendo ubuntu mesmo, mas você deve usar a versão estável que é a 12.04.

A 12.10 está em teste e só será lançado em outubro.

baixe esse guia que deve te ajudar:
http://orgulhogeek.net/ubuntu-guia-do-iniciante/

nesse site da comunidade você encontra dicas de pós-instalação, tutoriais, como instalar a versão clássica do gnome, etc.:

http://www.ubuntubrsc.com/

[],

A

Hugo, da uma olhada nesse link e ve se te atende http://blog.sudobits.com/2012/04/17/how-to-install-xfce-on-ubuntu-12-04/.

No começo eu detestava o unity também, mas ficar bom depois que você se acostuma.

J

kicolobo:
cleciusjm:
Eu atualmente só utilizo linux, gosto dele pela liberdade propiciada, por exemplo:

Até algum tempo atrás eu desenvolvia somente com J2SE e swing, então possuía uma maquina modesta para tal, até que comecei a trabalhar com android, então precisei ganhar desempenho, para não precisar trocar de maquina, mudei de KDE para XFCE e tive um ganho de desempenho sem muita dor de cabeça…

Além do que ambiente novos do Linux como Gnome3 e Unity, apesar de odiados por muitos por sua quebra de paradigma, após um determinado tempo se mostram ambiente altamente produtivos, devido as suas peculiaridades. A instalação e atualização de softwares também é algo simples, dependendo da distribuição, devido aos gerenciadores de pacotes como apt e pacman.

E normalmente os servidores utilizados são linux, e como bem sabemos existem pequenas divergências entre ele e o sistema da M$, logo, utilizando linux você evita problemas de sincronia entre ambiente de desenvolvimento e produção.

Por fim existem fatores que eu particularmente relevo, e muito, que é o conhecimento adquirido, perder medo de terminal, aprender a configurar certos arquivos, e se acostumar com a liberdade de poder fazer o sistema do forma que você preferir.

Oi cleciusjm, eu tive bastante dificuldade com o Unity. No seu caso, quais foram os ganhos que ele trouxe pra você?

No começo eu odiava o unity, inclusive já critiquei por aqui várias vezes, mas sempre teve os pontos positivos desde a época que era Ubuntu Netbook Remix, o próprio gnome-shell não era lá essas coisas, as aplicações em si também não estavam adequadas a esse novo ambiente.

Mas hoje em dia, alguns anos depois, evoluiu muito, sou completamente dependente do Unity, as principais vantagens são:

  • Atalhos do teclado que te permitem navegar mais facilmente entre janelas, abrir novas aplicações, buscar arquivos e etc.
  • Melhor utilização do espaço da tela, muito útil quando você quer rodar o eclipse em resoluções menores que full hd, até mesmo em full hd você percebe o ganho, um visual completamente clean.
  • Muito bonito, faz eu me lembrar que o Windows 7 já tem 3 anos e tá na hora de sair um novo.

As vantagens do Linux em geral na minha opinião são:

  • Linha de comando
  • Gerenciador de pacotes
  • Linha de comando [2]. Não existe coisa melhor que fazer tudo por linha de comando, inclusive aplicações que são originalmente CLI, como git, hg, svn, e outras como maven e console interativos de linguagens de programação como PROLOG, haskell, LISP, groovy, scala, ruby, os comandos para manipular arquivos que já foram citados aqui, o que mais uso é o tail -f pra ficar acompanhando logs de servidores de aplicações ou web containers, enfim, MUITAS OUTRAS COISAS que simplesmente o Windows te atrapalha ou dificulta, cmd é uma coisa tenebrosa, power shell idem. Opa, ainda esqueci dos fantásticos editores de texto de linha de comando como o vim e o emacs. Ainda tem os atalhos do terminal…

Vou parar por aqui, porque tem muita coisa mesmo que você absorve com os anos de uso, estudar pro LPI também te dá um bom conhecimento, se vai te tornar um desenvolvedor melhor, isso não sei te dizer, mas com certeza vai te tornar um desenvolvedor mais feliz, uso linux desde os 14 anos, nunca deixei de usar Windows, muitas vezes já tive que trabalhar usando Windows, mas usar Linux é uma coisa que faria mesmo que não fosse trabalhar com dev, meu sonho era ser sysadmin hahahaha

Já ia esquecendo dos Tiling Window Manager, é tanta coisa que dá pra escrever uns dois livros só falando de vantagens hahaha

Muita gente falou de segurança e desempenho, acredito que hoje em dia os sistemas estão bem próximos nesse sentido, não deve ser um critério de escolha

H

Agora que você comentou, se preparar para um LPI pode acabar dando uma boa base no SO?

L

Kkkkk

Olha porque não usar windows:
http://www1.folha.uol.com.br/tec/1122244-europa-investiga-possivel-bloqueio-a-rivais-do-internet-explorer-no-windows-8.shtml
:lol: :lol: :lol:

Imagine se vc tá fazendo algum software para web e quando for testar no firefox, não conseguir nem instala-lo…

Olha só, eu utilizo linux, só que o teclado é da microsoft… por algum motivo “mágico” o meu mouse trava…
O mais estranho é que isso só acontece quando o teclado que uso é o da microsoft.

J

Com certeza, mas muita coisa que você vê ali na LPI é meio “desnecessário” nas distros mais user-friendly.

R

Fiquei curioso no tópico, já que também não conheço nada de Linux, e também estou querendo aprender.
Uma outra dúvida que tenho é por que do Linux ser tão usado em ambientes de produção? Tem a ver com segurança? Performance?
Vi em algumas respostas sobre a eficiência do Linux contra vírus, o mesmo se aplica a por exemplo, invasões? Ou isso tem nada a ver, sendo isso responsabilidade de configurações de firewall por exemplo?
Obrigado.

R

Rendrys:
Fiquei curioso no tópico, já que também não conheço nada de Linux, e também estou querendo aprender.
Uma outra dúvida que tenho é por que do Linux ser tão usado em ambientes de produção? Tem a ver com segurança? Performance?
Vi em algumas respostas sobre a eficiência do Linux contra vírus, o mesmo se aplica a por exemplo, invasões? Ou isso tem nada a ver, sendo isso responsabilidade de configurações de firewall por exemplo?
Obrigado.

Tem muito a ver com questões de licença também. SO’s proprietários para servidores não são nada baratos.

T

Rendrys:
Fiquei curioso no tópico, já que também não conheço nada de Linux, e também estou querendo aprender.
Uma outra dúvida que tenho é por que do Linux ser tão usado em ambientes de produção? Tem a ver com segurança? Performance?
Vi em algumas respostas sobre a eficiência do Linux contra vírus, o mesmo se aplica a por exemplo, invasões? Ou isso tem nada a ver, sendo isso responsabilidade de configurações de firewall por exemplo?
Obrigado.

Linux é usado em ambiente de produção por ser mais estável e rápido que o Windows, além disso é mais seguro.

Não é que não exista vírus para o Linux, mas eu por exemplo nunca precisei clicar num arquivo executavel do Linux (.ELF), diferente do windows que você é obrigado a clicar em um .EXE toda semana.
A instalação dos pacotes geralmente vem de um repositório da distribuição, sendo assim muito mais seguro. Além disso é mais fácil fazer um vírus para Windows do que para Linux por causa da estrutura do ELF e do EXE.

Sobre invasões, o Linux tem suas falhas, mas o Windows nem se compara, para invadir um servidor windows tu tem um monte de formas, 1 linux tu vai ter que ralar muito mais.
Sem falar que os softwares para Linux são atualizados muito mais rápido que para o Windows, deixando o sistema mais seguro como um todo, pois as invasões as vezes são realizadas em cima das falhas dos softwares.

Ou seja, use e aprende o Linux se você tiver tempo, caso contrário continue no Windows e boa sorte! =)

A

E se você que usar windows que seja original né.
Você é um desenvolvedor, quer que alguem utilize o seu software, sem você receber nada por ele ?

J

Luiz Augusto Prado:
Kkkkk

Olha porque não usar windows:
http://www1.folha.uol.com.br/tec/1122244-europa-investiga-possivel-bloqueio-a-rivais-do-internet-explorer-no-windows-8.shtml
:lol: :lol: :lol:

Imagine se vc tá fazendo algum software para web e quando for testar no firefox, não conseguir nem instala-lo…

Olha só, eu utilizo linux, só que o teclado é da microsoft… por algum motivo “mágico” o meu mouse trava…
O mais estranho é que isso só acontece quando o teclado que uso é o da microsoft.

Driver proprietário. O pessoal tem até a boa intenção de fazer um genérico, mas sem esquema elétrico e documentação de projeto é muito difícil. Por exemplo a placa aceleradora amd radeon que uso no meu note. O driver for win chaveia a intel hd com a amd radeon dependendo da necessidade de cada software. Para linux o próprio driver da amd só faz isso manualmente, e se eu deixar a aceleradora on a bateria vai para o espaço em 1 hora.

W

juliocbq:
Luiz Augusto Prado:
Kkkkk

Olha porque não usar windows:
http://www1.folha.uol.com.br/tec/1122244-europa-investiga-possivel-bloqueio-a-rivais-do-internet-explorer-no-windows-8.shtml
:lol: :lol: :lol:

Imagine se vc tá fazendo algum software para web e quando for testar no firefox, não conseguir nem instala-lo…

Olha só, eu utilizo linux, só que o teclado é da microsoft… por algum motivo “mágico” o meu mouse trava…
O mais estranho é que isso só acontece quando o teclado que uso é o da microsoft.

Driver proprietário. O pessoal tem até a boa intenção de fazer um genérico, mas sem esquema elétrico e documentação de projeto é muito difícil. Por exemplo a placa aceleradora amd radeon que uso no meu note. O driver for win chaveia a intel hd com a amd radeon dependendo da necessidade de cada software. Para linux o próprio driver da amd só faz isso manualmente, e se eu deixar a aceleradora on a bateria vai para o espaço em 1 hora.

É o mesmo esquema da tecnologia Optimus pra nvidia né?

D

Adis:
E se você que usar windows que seja original né.
Você é um desenvolvedor, quer que alguem utilize o seu software, sem você receber nada por ele ?

aqui no brasil…windows original só se vier pré-instalado no notebook/PC…

nunca conheci ninguem que comprou o dvd do windows, só em empresas mesmo…(por que também os caras da Microsoft pegam no pé)

F

juliocbq:
drsmachado:
juliocbq:
drsmachado:
andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

Em termos de “desempenho” de software o windows acaba sendo mais rápido por uma coisa:

  1. o kernel win não gerencia memória tão bem como o kernel linux(Porque o segundo desfragmenta e ordena a posição de memória dos programas). Isso implica em “execução mais rápida” e em maior erro dos programas.
    Lembra quando você precisava do defrag para corrigir o disco? O linux faz isso automaticamente mapeando a memória ram.

A percepção que eu tenho é que o uso de memória virtual do Windows é extremamente inferior ao linux (talvez pela obrigatoriedade da partição de swap do segundo). Além do que, você só teria problemas de conflito com o SO caso precise acessar disco (salvar em banco de dados, por exemplo), devido à concorrência para acessar o recurso. Tirando isso, o auto defrag não seria problema, justamente pelo melhor gerenciamento da memória que o pinguim possibilita (afinal, um aplicativo em execução está em memória, não?), ou estou enganado?

O kernel linux desfragmenta em “memória ram”, enquanto o kernel win não faz isso e aloca tudo sequencialmente. Por isso a execução em ambiente win é mais rápida(por precisar apenas alocar sequencialmente) que em linux.

O linux ganha em estabilidade porque organiza memória melhor que o windows.

Bom, nao sei que tipos de apps estão falando, mas aqui onde trabalho 90% dos desenvolvedores usam ubuntu(até os q nao curtem usam), e a troca aconteceu devido a um fator inicial principal: tempo de deploy/buid, usamos um BIG framework aqui, e o tempo de build ficou extremamente mais rapido no linux!

J

fredferrao:
juliocbq:
drsmachado:
juliocbq:
drsmachado:
andre_salvati:
Hugo,

vai de Ubuntu.

Pq eu uso? Estabilidade e performance. Além disso, não posso me dar ao luxo de parar meu trabalho para reinstalar o Ruindows (a cada 6 meses ele vira uma carroça).


Engraçado que eu nunca tive esse problema.
Formato o windows, mas mais por uma questão de costume do que perda de performance.
Lógico, o CCleanner e afins comem solto (smartdefrag), mas é só.
Lógico II, o linux é sim superior em gerenciamento e, quando você desinstala algo, ele realmente desinstala, não como o SO da MS que “faz de conta” que desinstala, mas esquece das entradas do registor, por exemplo.

Em termos de “desempenho” de software o windows acaba sendo mais rápido por uma coisa:

  1. o kernel win não gerencia memória tão bem como o kernel linux(Porque o segundo desfragmenta e ordena a posição de memória dos programas). Isso implica em “execução mais rápida” e em maior erro dos programas.
    Lembra quando você precisava do defrag para corrigir o disco? O linux faz isso automaticamente mapeando a memória ram.

A percepção que eu tenho é que o uso de memória virtual do Windows é extremamente inferior ao linux (talvez pela obrigatoriedade da partição de swap do segundo). Além do que, você só teria problemas de conflito com o SO caso precise acessar disco (salvar em banco de dados, por exemplo), devido à concorrência para acessar o recurso. Tirando isso, o auto defrag não seria problema, justamente pelo melhor gerenciamento da memória que o pinguim possibilita (afinal, um aplicativo em execução está em memória, não?), ou estou enganado?

O kernel linux desfragmenta em “memória ram”, enquanto o kernel win não faz isso e aloca tudo sequencialmente. Por isso a execução em ambiente win é mais rápida(por precisar apenas alocar sequencialmente) que em linux.

O linux ganha em estabilidade porque organiza memória melhor que o windows.

Bom, nao sei que tipos de apps estão falando, mas aqui onde trabalho 90% dos desenvolvedores usam ubuntu(até os q nao curtem usam), e a troca aconteceu devido a um fator inicial principal: tempo de deploy/buid, usamos um BIG framework aqui, e o tempo de build ficou extremamente mais rapido no linux!

Vai ver pelo fato dele deixar tudo organizado acaba tendo esse ganho. Nesse post que você comentou eu me referia a alocação de memória. O win não verifica tanta coisa como o linux. Então o start das aplicações no windows são mais rápidas.

J

wagnerfrancisco:

É o mesmo esquema da tecnologia Optimus pra nvidia né?

Isso mesmo. O linha corei da intel é de processadores que vem com uma placa de vídeo embutida neles(a intel hd). O processador tem a capacidade de trocar entre várias placas de vídeo para ganhar em economia de bateria. A nvídia já é mais cuidadosa com seu driver linux. Agora a amd é muito complicada. Eu preciso chavear manualmente pra poupar a bateria do meu note.

F

Com relação ao tópico, aprenda, vc vai gostar, mas siga firma, nao corra para as colinas na primera vez que tiver que configurar um arquivo manualmente!

Sempre fui usuario de windows, mas a algum tempo q nem vejo mais a cara do bixo, apesar de ter dual boot no meu note, o windows ainda esta la unicamente para jogos!

Como ja disseram, a grande maioria dos apps web rodam em servidores linux(tinha até um rumor de que o BING da microsoft rodava em linux :twisted: ), logo, se vc é um desenvolvedor vai acabar tendo que configurar um, eu acho que é assim pela segurança e a questão de uso de recursos, por ex. vc pode ter um VPS linux com 512MB de RAM rodando seus apps java tranquilamente, se fosse ter um windows acho que com 512 nem o windows subia, o ubuntu server limpo consome menos de 200MB pra subir.
E claro devido a recursos e licenças um VPS linux é mais barato que windows.

Fazer as coisas via linha de comando realmente vicia, hehe, mesmo o ubuntu tendo um gestor de software visual, eu instalo 99% das coisas via comando, com apt-get e tals.

Bom não ter que ficar reinstalando SO a cada 6 meses é outro fator, apesar do Win 7 ter melhorado bastante, dependendo do usuario isto ainda pode ser verdade.

Engraçado como ter um antivirus instalado se tornou algo normal e padrao no windows, eu nao aceito isto, ser obrigado a ter um sanguessuga de recursos instalado no sistema, pq se nao o mundo pode acabar.

Se vc usa muito o office pode nao curtir muito o LibreOffice, mas se vc é apenas um usuario comum como eu, e vai apenas digitar um texto e formata-lo, nao vai ter problemas.

Como to usando linux tanto no trabalho quanto em casa, o windows ja ta virando um cara estranho pra mim, engraçado como ainda dizem que o linux é mais dificil, mas o fato é que os gerenciadores de pacote são muito bons, melhor que ter que procurar na internet os programas e versões que precisa. Ontem mesmo instalei um linux + windows em dualboot pra um amigo, terminado a instalação do ubuntu ele ja estava ok pra uso, no windows havia acabado apenas a primeira parte agora ele teria que ir na internet e baixar dezenas de drivers, por outro pc claro pq nem o driver de rede tinha :lol:

K

java + linux = performance.

T

rmendes08:

Tem muito a ver com questões de licença também. SO’s proprietários para servidores não são nada baratos.

A diferença entre uma instância linux e outra windows na Amazon é de R$ 0.01.

T

kdoigor:
java + linux = performance.

Para a maioria dos projetos Java, que é manutenção de projetos antigos ou no máximo CRUD onde o gargalo passa a ser o banco de dados, Java tem uma performance aceitável.

Mas uma linguagem que compila diretamente para código nativo sempre será mais performático do que uma que compila para bytecode.

A

tionil:

Mas uma linguagem que compila diretamente para código nativo sempre será mais performático do que uma que compila para bytecode.

Isso não é bem verdade mais

G

.

K

tionil:

Mas uma linguagem que compila diretamente para código nativo sempre será mais performático do que uma que compila para bytecode.

todo mundo que nao conhece o poder do java diz isso.

T

kdoigor:

todo mundo que nao conhece o poder do java diz isso.

Como eu falei, trabalhar com sistemas simples de CRUD é o forte do Java, neste caso recomendi Java sem problemas.

Para aplicativos mais exigentes é melhor usar uma linguagem que compila direto para nativo porque é mais rápido.

J

[quote=André Fonseca]

tionil:

Mas uma linguagem que compila diretamente para código nativo sempre será mais performático do que uma que compila para bytecode.

Isso não é bem verdade mais

É mais ou menos. Teoricamente um programa java tem que ser um pouco mais lento que um nativo por alguns motivos.

1)Toda classe java precisa ser carregada pelo classloader. Só o arquivo jr.jar possui 40 mb.
Isso influencia na inicialização do programa.

  1. Qualquer objeto java tem um overhead se não me engano de 8b e 12b por array em relação a um c++ por exemplo que possui 4(porque ele só aloca apontadores).
    Isso faz o programa java consumir no mínimo 3x mais memória.

wiki:
Memory usage
Java memory usage is much heavier than C++'s memory usage because:
There is an 8-byte overhead for each object[56] and 12-byte for each array[57] in Java (32-bit; twice as much in 64-bit java). If the size of an object is not a multiple of 8 bytes, it is rounded up to next multiple of 8. This means an object containing a single byte field occupies 16 bytes and requires a 4-byte reference. Please note that C++ also allocates a pointer (usually 4 or 8 bytes) for every object that declares virtual functions.[58]
Parts of the Java Library must be loaded prior to the program execution (at least the classes that are used “under the hood” by the program).[59]. This leads to a significant memory overhead for small applications[citation needed].
Both the Java binary and native recompilations will typically be in memory.
The virtual machine itself consumes a significant amount of memory.
In Java, a composite object (class A which uses instances of B and C) is created using references to allocated instances of B and C. In C++ the memory and performance cost of these types of references can be avoided when the instance of B and/or C exists within A.
Lack of address arithmetic makes creating memory-efficient containers, such as tightly spaced structures and XOR linked lists, impossible.
In most cases a C++ application will consume less memory than the equivalent Java application due to the large overhead of Java’s virtual machine, class loading and automatic memory resizing. For applications in which memory is a critical factor for choosing between languages and runtime environments, a cost/benefit analysis is required. This type of analysis is beyond the scope of this document.

Esse artigo aqui é bem legal e fala sobre isso. As vantagens e desvantagens.

É claro que você pode escrever um software mais rápido que um nativo se o segundo for mal feito.
O modelo de memória da java é bem mais eficiente, porque ela mantém o código desfragmentado.

Mas em geral o nativo é um pouco mais rápido, porque é natural mesmo(menos etapas na execução, menos recursos pra carregar, etc…)

K

tionil:
kdoigor:

todo mundo que nao conhece o poder do java diz isso.

Como eu falei, trabalhar com sistemas simples de CRUD é o forte do Java, neste caso recomendi Java sem problemas.

Para aplicativos mais exigentes é melhor usar uma linguagem que compila direto para nativo porque é mais rápido.

Achometro nao diz nada. Faz um sistema de billing com 1 bilhao de trasações/dia gerenciando memoria, escalavel, sem memory leak, e com segurança usando sua linguagem.

J

kdoigor:
tionil:
kdoigor:

todo mundo que nao conhece o poder do java diz isso.

Como eu falei, trabalhar com sistemas simples de CRUD é o forte do Java, neste caso recomendi Java sem problemas.

Para aplicativos mais exigentes é melhor usar uma linguagem que compila direto para nativo porque é mais rápido.

Achometro nao diz nada. Faz um sistema de billing com 1 bilhao de trasações/dia gerenciando memoria, escalavel, sem memory leak, e com segurança usando sua linguagem.

vocês estão discutindo besteira.
Não é porque um sistema é escrito em java ou c++ que terá leaks ou não.
É perfeitamente possível criar um bom modelo de memória com smartpointers em c++.

A escolha é feita de acordo com o hardware em que o programa vai rodar.

D

juliocbq:

vocês estão discutindo besteira.

Toda essa discussão é besteira.
Performance?
Camaradas, o autor do tópico perguntou por que desenvolver usando linux é mais indicado e não se o resultado do produto desenvolvido para A, B, C ou o ca$%$% a 4 é mais performático, belo e delicado.

Parece que vocês não sabem que sempre vai existir um troll querendo meter o bedelho para tirar os puristas do sério e começar uma guerra.
Só quem perde é a credibilidade do guj e os que procuram tópicos interessantes.

O que me deixa abismado é ver, todos os dias, essas bizarrices aqui. Sinceramente, não fosse por uma ou duas perguntas feitas de forma que me deixe interessado em responder, já teria largado o barco. Mas eu creio que aqueles que tem dúvidas e são interessados não merecem pagar pelas babaquices de uma meia dúzia.
Faz muito tempo que não vejo um tópico ser discutido de forma adulta, inteligente. Só aparece essas coisas onde se usam argumentos pífios e imbecis.

Não duvido nada alguém vir dizer que no TIOBE tem um gráfico que fala que linux vai desaparecer em pouco tempo. O que isso terá a ver com o tópico, não sei.

T

drsmachado:
juliocbq:

vocês estão discutindo besteira.

Toda essa discussão é besteira.
Performance?
Camaradas, o autor do tópico perguntou por que desenvolver usando linux é mais indicado e não se o resultado do produto desenvolvido para A, B, C ou o ca$%$% a 4 é mais performático, belo e delicado.

Parece que vocês não sabem que sempre vai existir um troll querendo meter o bedelho para tirar os puristas do sério e começar uma guerra.
Só quem perde é a credibilidade do guj e os que procuram tópicos interessantes.

O que me deixa abismado é ver, todos os dias, essas bizarrices aqui. Sinceramente, não fosse por uma ou duas perguntas feitas de forma que me deixe interessado em responder, já teria largado o barco. Mas eu creio que aqueles que tem dúvidas e são interessados não merecem pagar pelas babaquices de uma meia dúzia.
Faz muito tempo que não vejo um tópico ser discutido de forma adulta, inteligente. Só aparece essas coisas onde se usam argumentos pífios e imbecis.

Não duvido nada alguém vir dizer que no TIOBE tem um gráfico que fala que linux vai desaparecer em pouco tempo. O que isso terá a ver com o tópico, não sei.

Cara estressado demais não pra um tópico no offtopic?

Sugiro que vá dar uma volta no shopping.

M

java + linux é mais rápido que java + windows, não me perguntem o motivo.

Particularmente, uso Linux porque gosto mais e prefiro uma máquina mais rápida, simples assim. Mas dependendo do gosto e necessidade da pessoa, não é a melhor a opção e isso não é defeito.

M

Faz uns dois anos que uso o Linux pra valer, depois de testar algumas distros, acabei ficando muito contente com o Ubuntu, agora o 12.04 tá muito show. No trabalho utilizo o Windows pra desenvolver por questões da empresa, mas no meu note o Ubuntu é o meu sistema padrão, acho muito mais produtivo e acho tbm mais rápido. É claro que cada um tem seus prós e contras. Para iniciar no mundo linux, confesso que é um pouco sofrido, mas ainda bem que tem uma comunidade gigante pra te dar suporte, com o tempo você vai se acostumando.

Minha dica, é que quem nunca mexeu no Linux e trabalha com Java, Ruby, PHP, Python, pode ganhar produtividade aprendendo o Linux.

Criado 18 de julho de 2012
Ultima resposta 7 de ago. de 2012
Respostas 71
Participantes 31