Quais recursos estão faltando no Windows que podem melhorar a produtividade de um programador. Eu sei que muitas pessoas gostariam que alguns recursos do Linux e OSX fossem portados ou criados para Windows também. O que está faltando para você?
Um exemplo seria a opção de ter vários espaços de trabalho. Quando não houver a possibilidade de usar monitores duplos que podem ser úteis.
Respostas:
Um compilador e um shell útil.
Esclarecimentos com base nos comentários:
Eu não estava claro, eu deveria ter escrito o compilador C / C ++. Compiladores para C # ou Fortran não contam, pois muitas das ferramentas e bibliotecas necessárias requerem um compilador C ou C ++. Costumava ser muito ruim, onde você não podia criar extensões C para Python com outro compilador que não o Microsofts, porque foi com isso que o Python foi compilado. Acho que o MinGW resolveu isso e você pode fazê-lo com o MinGW agora, mas é uma boa razão por que um compilador C / C ++ padrão deveria ter sido incluído ou disponibilizado gratuitamente há 20 anos. Ultimamente, a Microsoft está começando a entender o poder de ter um exército de programadores de hobby disponíveis.
Eu não usei o PowerShell, talvez seja bom. Mas a utilidade do bash para mim não está na linguagem shell. A família de línguas * sh é bestas horríveis de qualquer maneira. Eu até prefiro arquivos em lote. ;) São coisas como a recuperação e pesquisa do histórico de comandos, que são relativamente básicas no Windows, e com pipelines e coisas sobre as quais estou falando (e vejo que o powershell tem pipelines, então isso é bom).
Há coisas boas no Windows também, mas esse é outro tópico. ;)
fonte
fonte
apt-get source package-name
sempre que desejar saber como funciona um pacote de software específico.Eu posso retirar "obrigatório" do título, pois desenvolvi o Windows felizmente por quase 20 anos. Obviamente, desenvolvi uma boa caixa de ferramentas de utilitários e ferramentas. Veja a lista de Scott Hanselmann para iniciantes. É de primeira linha e remonta a 2003.
Aliás, o Windows 7 inclui o PowerShell, que ajuda nos comentários sobre o "shell decente".
Dito isto, é sempre bom ter ferramentas melhores incorporadas. Pegue qualquer uma das ferramentas da lista de Scott.
Realisticamente, o MS certamente poderia melhorar a interface do usuário de muitas ferramentas internas, como regedit, task mgr (cf. Process Monitor) e as ferramentas de visualização de eventos. Seria bom ter suporte interno para várias pranchetas. No OSX, eu gostaria de expor e o suporte a várias áreas de trabalho é bom. Seria bom se o Windows nativamente (também conhecido com mais facilidade) suportasse arrastar texto de caixas de texto.
O XCode realmente é um saco IMO, então eu não gostaria disso no Windows. O VS é muito melhor, mas não embutido; portanto, talvez o VS Expense embutido possa atualizar. Obviamente, a pegada do sistema operacional cresce com isso (como acontece com o OSX), então também há uma desvantagem.
O gcc distribuído é muito bom, portanto seria muito bem-vindo como uma estrutura interna para qualquer compilador usar (consulte Incredibuild para obter uma solução VS).
Seria bom se fosse mais fácil obter e usar uma compilação verificada do sistema operacional para encontrar problemas. O uso de cabos de depuração é um pouco extremo para as boas informações que você obtém do Checked Build. As VMs podem fazer isso facilmente - se sim, alguém comente com um link.
fonte
BASH, sed, grep, awk, find e ssh
fonte
fonte
A capacidade de alterar a interface do usuário para diferentes níveis de conhecimento dos usuários.
Por exemplo, como desenvolvedor / administrador, você pode precisar de um nível de especialista em UI.
fonte
As ferramentas de processamento de arquivos Unix (wc, sort, uniq, awk, cat, grep, find etc.), incluindo - como outros já mencionaram - um bom shell (por exemplo, bash).
Para ser produtivo no Windows, quando estiver trabalhando com qualquer coisa relacionada a texto, acabarei precisando entrar na caixa de ferramentas de comando do Unix. Felizmente, Cygwin é um excelente recurso apenas para esse fim.
Dito isto, você precisa "domar" o Cygwin para funcionar bem com o sistema de arquivos do Windows; a menos que você substitua algumas configurações padrão, poderá obter arquivos com permissões desagradáveis e difíceis de excluir. Qualquer coisa muito acima das necessidades básicas e você está melhor com uma VM ou inicialização dupla, mas para os meus propósitos, estou bastante satisfeito com o Cygwin.
fonte
Eu concordo com os outros posts para adicionar:
Sinto falta do ssh com x forwarding vs windows remote desktop. Para aqueles que não sabem, você pode executar um programa de desktop na rede, mas ele funciona como uma janela local.
fonte
Suporte para argumentos de linha de comando mais longos. Você encontrará rapidamente problemas ao criar soluções java complexas que não usam os sistemas de construção da Microsofts.
fonte
valgrind
egcov
?Uso o PowerShell ao desenvolver no Windows (como hobby) e instalei as ferramentas GnuWin32 (sed, awk, grep, etc ...) e o Python para obter scripts fáceis, por isso não há problema.
Mas me pego batendo no muro sempre que quero inspecionar meu programa ... Claro que posso usar o depurador (um pouco), mas:
Eu vi algumas ferramentas aqui e ali e houve uma boa pergunta no StackOverflow e o número de ferramentas listadas é bastante assustador ... e suas limitações também.
O Linux foi desenvolvido por desenvolvedores para desenvolvedores, por isso tem muito mais ferramentas amigáveis para desenvolvedores :)
fonte
Copie / cole com função de histórico.
Felizmente, o ClipX oferece uma solução:
PS Não sou afiliado ao ClipX;)
fonte
Um shell decente, além de um compilador, seria um bom começo no que diz respeito aos recursos "padrão".
fonte