Blog

Quando falamos de uma máquina desktop geralmente podemos assumir que ela faz uso de um dos três grandes sistemas operacionais. Eu, pelo acaso, comecei usando computadores com Windows. Neles, tudo segue o padrão “next next”, onde você sempre possui um utilitário que clicando em alguns botões pode concluir qualquer ação esperada de um usuário comum. O Linux (sem distiguir distruibuições), te dá o controle total sobre a máquina. Sob qualquer dificuldade, você pode abrir uma tela preta e ordenar comandos ao computador. Já com o Mac OS, você tem a união de ambos mundos: um “next next” com terminal Unix.

Antes de qualquer coisa, esteja preparado: você não encontrará aqui um macfag expressando todo o seu amor pelo suor do Steve Jobs. Conhecer o que o mercado oferece deve servir para melhorar o seu uso do computador como ferramenta que o é. Ter qualquer preconceito quanto a isso é uma besteira que pode estar atrapalhando o seu desenvolvimento.

Falando sobre o desenvolvimento do Mac OS em si, é notável o apreço à filosofia minimalista. Esta tem como objetivo principal a diminuição de informações para que não tenhamos dificuldade em se concentrar no que realmente importa. Mas mesmo com toda essa simplicidade, o Mac OS não deixa de agradar também o usuário avançado que conhece interfaces de computador o suficiente para saber onde tentar encontrar uma função que precisa.

E esta filosofia também acaba sendo refletida nos programas desenvolvidos para o sistema operacional. O AppCleaner, por exemplo, procura por arquivos que um determinado app possa ter criado fora de sua pasta de instalação para removê-lo completamente. A interface? Você arrasta o app para uma janela e confirma a lista de arquivos a serem deletados.

OK. Deve ser open source para ser comparado a softwares deste tipo? Postgres.app. Com ele, tenho o banco de dados PostgresSQL de pé com seus utilitários disponíveis via terminal (como psql e pg_dump) já configurados seguindo a padronização indicada. Ver um ícone de elefante ao lado do relógio significa que tudo está funcionado. Documentação para casos mais específicos estão disponíveis em opção ao clicar no próprio.

Apesar de termos alternativas muito melhores que o QuickTime Player para assistir vídeos, posso precisar dele ao usar um aplicativo que usa a Cocoa, API alto nível para desenvolvimento no Mac OS. No entanto, ele não vem com suporte nativo a formatos menos conhecidos. Solução? O open source Perian. Você instala um executável e… só. Funciona. Qualquer configuração (de quase nenhuma disponível) é feita via preferências do sistema.

Outro que você nem precisa ter um Mac para testar? Transmission. Nele, você pode fazer downloads, criar e gerenciar torrents e magnet links. A interface é extremamente direta para o desejo de um usuário que não quer se preocupar: abro um arquivo torrent/magnet link e aparece uma janela para seleção da pasta destino. A partir dai, ícones de fácil associação para pausar ou abrir o download (que avisará por notificação quando completar) estão destacados na indicação do torrent. Para qualquer opção extra posso dar um duplo clique no arquivo e modificar configurações avançadas.

Em todos estes aplicativos vemos facilmente um padrão: cada um tem um objetivo muito bem definido. Fazem apenas isso e do melhor jeito possível. No entanto isso não é exclusividade do Mac e muito menos da Apple. Esse mesmo comportamento pode ser visto em uma suíte que deve ser familiar a qualquer usuário de Unix que já tenha aberto um terminal: GNU Core Utilities. ls, ln, rm, mv, chown, echo… De cada um deles você provavelmente sabe o uso mais comum mas também tem disponível muitas outras opções que só usuários avançados conhecem.

No mundo do software livre em geral, os programas são desenvolvidos tendo como foco principal as suas funcionalidades. No entanto, apesar de termos softwares de excelente qualidade técnica, vemos interfaces feias ou difíceis de usar. Um exemplo claro dessa situação existente é vista no Wireshark. Este, bastante usado em faculdades de Ciência da Computação, tem como objetivo mostrar o tráfego de rede para análise. Vemos um programa que faz isso muito bem mas tem uma barreira inicial grande: por que preciso digitar “host 192.168.0.1” para monitorar o que passa pelo IP indicado e não apenas “192.168.0.1”, ação esperada de um usuário novo? O que significa cada um dos botões de iniciar e parar captura na parte esquerda da barra de ferramentas? Por que tenho linhas em vários tons de diferentes cores? Essas são perguntas que mesmo pessoas com conhecimento técnico de redes se fazem e têm o trabalho inicial de ler a (muito boa) documentação do programa.

Não importa seu nível técnico. Usar qualquer ferramenta que simplesmente funciona e faz o desejado mesmo quando não esperado é sempre mais agradável. Para isso, você precisa tratar cada funcionalidade como um programa dedicado. Com que frequência espero que ela seja usada? É difícil de encontrá-la no meio dos outros da categoria? E, na dúvida, lembre-se do AppCleaner e se pergunte se um botão para ativação realmente é necessário. Mesmo não sendo um Mister M você consegue pressupor futuras ações do usuário, basta sentir-se na sua pele e fazer do melhor jeito que pode. O que o Mac OS faz é diminuir a quantidade de elementos ditos principais na interface para, literalmente, diminuir a preocupação do seu usuário. Erros e não acertos são lembrados. Mas experiências sempre ficam marcadas, não importa a plataforma.

Quer saber mais sobre minimalismo? O The Joy of Less vai te ajudar a enxergar essa visão intuitiva que temos. Agora se prefere ter alguém como espelho, o Aral Balkan tem levantado estes pontos sobre software livre há mais tempo. Siga-o que você vai aprender muito e ter a oportunidade de contribuir mais efetivamente com o que já faz.