Em março de 2010, A Replay Solutions realizou uma grande pesquisa sobre tecnologias relacionadas com a plataforma Java. Agora é hora de ver os resultados:
Pra quem quer um resumo geral, a pesquisa mostra números altos no uso do Tomcat, Hibernate e Eclipse, com esperado. Indica crescimento do cloud, mas ainda não sendo massivamente adotado, a onipresença e importância do javascript. Por último, e para minha surpresa, aparece um número enorme bem alto de deploys em ambiente Windows.
Isso também me deixa surpreso @_@
Onde trabalho os servidores são em Solaris e Debian (deve ter mais algumas distros perdidas, mas os que uso tem essas instalações), mas o ambiente de dev é em windows… acho isso horroroso, pra subir uma aplicação é um trampo danado, copio prum diretorio compartilhado num outro servidor com samba, dai (com auxilio do putty) dou um scp pro servidor que quero mandar a aplicação.
Se eu pudesse trabalhar em ambiente unix 100% um único scp simples e direto resolveria meu problema, assim como era antes… fora que a cópia do windows pela rede é muito lenta, não consigo entender isso.
Resumindo, se pra desenvolver já achei “pain in the ass” nem quero nem imaginar como é ter um servidor em Windows… quando subo o Jboss e o WebLogic na máquina de dev (pra testes, logicamente) já me sinto esquisito uauhahuahuauh
Nao li a pesquisa, mas esses deploy em windows, nao seria pela grande massa de novos programadores saindo de faculdades? É fato que essa meninada quase nao ve linux e prefere a “facilidade” do windows.
Já publiquei uma aplicação em um cliente de um tamanho considerável… onde todos os servidores eram windows…
O único problema foi que o cara do CPD disse pra gente: Esses servidores não podem parar em hipótese nenhuma
Ainda bem que nao deu pau… e nao teve que reiniciar a máquina … ehhehe
Mas até que se prove o contrário… uma aplicacao no windows funciona igual como funciona no linux… logo… é normal optar pelo mais fácil…
Tem empresas que preferem comprar algo, do que usar algo grátis… Assim existirá um contrato de responsabilidade…
Talvez isso favoreça um pouco o windows também…
De qualquer maneira, mesmo que eu for publicar uma aplicacao no linux… prefiro desenvolver em windows…
[quote=rogelgarcia]
Tem empresas que preferem comprar algo, do que usar algo grátis… Assim existirá um contrato de responsabilidade…
Talvez isso favoreça um pouco o windows também…[/quote]
No linux você também tem isso, basta comprar o suporte.
[quote=rogelgarcia]
De qualquer maneira, mesmo que eu for publicar uma aplicacao no linux… prefiro desenvolver em windows… [/quote]
Ai já é uma questão de gosto, quando comecei a desenvolver em linux achei estranho, mas conforme fui aprendendo notei o quanto eu era mais produtivo em linux a windows
[quote=Tchello]
No linux você também tem isso, basta comprar o suporte.[/quote]
É… to ligado que existe isso… mas talvez algumas empresas preferem do jeito microsoft de ser…
Só uma hipótese… pra tentar explicar…
[quote=Tchello]
Ai já é uma questão de gosto, quando comecei a desenvolver em linux achei estranho, mas conforme fui aprendendo notei o quanto eu era mais produtivo em linux a windows[/quote]
O problema no linux (pra mim)… é que tem certas burocracias… é questao de segurança… mas eu prefiro nesse caso a facilidade do windows… a interface gráfica do windows tb é melhor e mais leve…
Realmente, é questão de gosto. Pra mim, segurança é vantagem e não problema. Só de não ter de ficar carregando anti-virus, anti-spyware, anti-isso e anti-aquilo na memória, o Linux já sai ganhando.
E pelo menos na minha máquina do serviço, a interface gráfica do Linux rodava com muito menos memória e os efeitos gráficos consumiam muito pouco processamento.Não entendo como as animações do Windows 7 levam a CPU utilizar tanto processador se no Linux que nem tem driver tão bom da placa de vídeo, a CPU roda bem mais macia…
Agora, é fato que o Windows tem muito mais programas, reconhece mais periféricos e tem tarefas que ele é mais fácil pra um usuário leigo.
Eu não acho estranho muitas empresas utilizarem Windows, pela facilidade de “arrastar e clicar” que o servidor ta no ar. Por exemplo, precisa reiniciar o Tomcat, botão direito, “Restart”. No linux, teria de fazer uma série de comandos para que isso aconteça.
Mas isso também trás problemas, todos da empresa onde trabalho, desenvolvem em ambiente Linux e o servidor sendo Windows acaba tendo divergências em ambientes de desenvolvimento iguais, apenas mudando SO. Um exemplo, tente comparar Integer com ==, no Linux funciona, já no Windows não.
Posso tá falando bobagem aqui… mas o negócio do == é o seguinte…
Nao se deve comparar objetos com == e sim com equals…
No caso do Integer == dar certo… é que como Integer tende a ser um objeto muito utilizado… para fazer otimizações… a máquina virtual guarda os objetos integer já prontos até o valor 1024… Entao se vc tem em dois lugares diferentes new Integer(532) por exemplo… se vc fizer o == vai dar true… por causa desse detalhe de performace… (já tem muito tempo que li algo relativo a isso… entao nao sei se isso ainda é válido e se é isso mesmo… mas lembro de algo a respeito)
Posso tá falando bobagem aqui… mas o negócio do == é o seguinte…
Nao se deve comparar objetos com == e sim com equals…
No caso do Integer == dar certo… é que como Integer tende a ser um objeto muito utilizado… para fazer otimizações… a máquina virtual guarda os objetos integer já prontos até o valor 1024… Entao se vc tem em dois lugares diferentes new Integer(532) por exemplo… se vc fizer o == vai dar true… por causa desse detalhe de performace… (já tem muito tempo que li algo relativo a isso… entao nao sei se isso ainda é válido e se é isso mesmo… mas lembro de algo a respeito)[/quote]
Não estou falando que esse é o modo correto de programar… hehehe
Eu só utilizei como Exemplo que aconteceu aonde trabalho e acabou dando essa divergência entre Linux e Windows… Não é a questão da programação em si, porque não se compara objetos com ==.
Pois é, isso é um caso muito comum com vários aplicativos. Pra Windows a Apache faz uma app na barra de tarefas que facilita a vida do desenvolvedor. E pra Linux ou Solaris não colocam o mesmo recurso, nem pra KDE nem pra Gnome…
Uma parte do Linux não conseguir grande mercado é justamente esse tipo de coisa, parece que usuários de Linux são sempre obrigados a utilizar linha de comando. Enquanto existir essa mentalidade, o Linux tende a ficar restrito a…usuários que gostam de linha de comando :lol: :lol:
Nessa questão Window/Linux, já vi muitos ambientes onde o pessoal desenvolve em máquinas Windows sem a preocupação com encoding, deixam a IDE no padrão. Quando vai para o deploy em um servidor Linux acontecem vários problemas de acentuação, como era de se esperar. Conheço vários ambientes que se não colocar as diretivas na JVM:
A aplicação simplesmente fica ilegível. Talvez, isso explique, em parte, a grande quantidade de deploys em máquinas Windows. Infelizmente, muitos dos desenvolvedores que vejo nem sabem direito essa questão de “encoding”, simplesmente baixam a IDE e já começam a codificar. Não sei se alguém aqui já teve a experiência de abrir um projeto desenvolvido em Eclipse ou NetBeans em ambiente Windows e depois abrir o mesmo projeto em ambiente Linux. Se os desenvolvedores não se preocuparem com a questão de encoding, vão dizer coisas do tipo “no Linux o projeto dá pau”, quando na verdade o problema começou um pouquinho antes.
Como geralmente as empresas se preocupam em reduzir custos, talvez elas achem mais barato colocar tudo Windows do que qualificar os desenvolvedores para saberem configurar o “encoding” e outras coisitas mais, que aos olhos de muitos gestores não passa de “um custo adicional irrelevante para o projeto”.
[quote=ranophoenix]Nessa questão Window/Linux, já vi muitos ambientes onde o pessoal desenvolve em máquinas Windows sem a preocupação com encoding, deixam a IDE no padrão. Quando vai para o deploy em um servidor Linux acontecem vários problemas de acentuação, como era de se esperar. Conheço vários ambientes que se não colocar as diretivas na JVM:
A aplicação simplesmente fica ilegível. Talvez, isso explique, em parte, a grande quantidade de deploys em máquinas Windows. Infelizmente, muitos dos desenvolvedores que vejo nem sabem direito essa questão de “encoding”, simplesmente baixam a IDE e já começam a codificar. Não sei se alguém aqui já teve a experiência de abrir um projeto desenvolvido em Eclipse ou NetBeans em ambiente Windows e depois abrir o mesmo projeto em ambiente Linux. Se os desenvolvedores não se preocuparem com a questão de encoding, vão dizer coisas do tipo “no Linux o projeto dá pau”, quando na verdade o problema começou um pouquinho antes.
Como geralmente as empresas se preocupam em reduzir custos, talvez elas achem mais barato colocar tudo Windows do que qualificar os desenvolvedores para saberem configurar o “encoding” e outras coisitas mais, que aos olhos de muitos gestores não passa de “um custo adicional irrelevante para o projeto”.
[/quote]
Mas as IDEs tinham de tratar isso de forma transparente aos desenvolvedores. Particularmente precisar de um desenvolvedor com maior conhecimento pra conseguir fazer um simples deploy eu não vejo como vantagem, muito pelo contrário…
Outro problema que já vi é quando crio um projeto no Netbeans pra Windows ele cria uma pasta toda em maiúsculo. Quando vou abrir no Linux ele procura a mesma pasta em minúsculo e não acha, dando erro na compilação.
São tipos de coisas simples, mas que seriam muito fáceis as IDEs mudarem.