sábado, 28 de setembro de 2013

Revisitando velharias: Duke Nukem 3D no Linux nativamente

Esses dias eu fui tomado pela nostalgia de jogar Duke Nukem 3D, um dos primeiros jogos que eu joguei em um PC.

Por sinal, esse foi um dos jogos que alimentou a discussão de "jogos deixam as pessoas violentas?" no Brasil: provavelmente vocês lembram do Atirador do Cinema.

Não chegamos a um consenso até hoje, e provavelmente nunca chegaremos, mas tudo bem, não é o ponto deste post. Apenas recomendo que não saiam atirando aleatoriamente por aí.

No DOSBox ficou lento (não sei por que - nunca me acertei com o DOSBox), então resolvi jogar nativamente no Linux. E de quebra, eu já teria como usar resoluções mais altas.

Quem vai fazer a mágica para nós é a EDuke32, uma port da engine do Duke Nukem para Linux. Foi testado no Linux Mint 15, mas provavelmente funciona nas outras distribuições, em último caso vai ser necessário compilar. E funciona em Windows/Mac também.

Primeiro, você obviamente vai precisar do jogo. Não vou colocar links de download aqui mas se acha facilmente no Google.

Após, instale a EDuke32. No Mint/Ubuntu, coloque no /etc/apt/sources.list:

deb http://apt.duke4.net quantal main
deb-src http://apt.duke4.net quantal main

e adicione a chave pública do repositório deles:

wget -q http://apt.duke4.net/key/eduke32.gpg -O- | sudo apt-key add -

Para outros sistemas siga as instruções do site.

Então, instale o pacote eduke32. Para verificar se o programa instalou, execute ele. Não vai adiantar nada: você não tem o jogo instalado, então feche: ele já criou os diretórios adequados.

Agora, copie o arquivo duke3d.grp do jogo para o diretório .eduke32 na home. Execute-o novamente, e na aba Game escolha a opção adequada.

Agora... clique em Start e let's rock com o mesmo jogo que você jogou várias vezes no seu computassauro há uns anos atrás.


terça-feira, 3 de setembro de 2013

Comendo comida de cachorro

Calma: este não é um post sobre dietas bizarras ou sobre gente com hábitos alimentares estranhos. Tampouco descrevo minhas experiências com o já citado alimento.

Em informática, existe um conceito chamado dogfooding (literalmente: comer sua própria comida de cachorro). Em português não há expressão similar, até onde eu sei (exceto talvez provar do próprio veneno, mas dogfooding não tem a conotação negativa desta).

Trata-se de uma empresa (de tecnologia, geralmente) usar seu próprio produto no dia-a-dia, em todas as etapas de desenvolvimento. Acho que todo mundo aqui acharia graça se a Microsoft não usasse Windows na maioria dos seus computadores ou se a Apple desse um smartphone da Samsung para cada um dos seus funcionários [1]. E ninguém compraria de uma empresa de informática que usasse máquinas de escrever.

Da mesma forma, o dogfooding expõe problemas reais que acontecem no uso de um produto e que podem passar despercebidos por testes, especificações e outros. Serve para a gerência ver (até certo ponto) como o usuário final irá empregar o produto. Foi dessa forma que a Microsoft, entre outras, revelou (e revela) vários bugs no Windows: todos os desenvolvedores deles são obrigados a usar o ambiente que eles estão desenvolvendo.

Em qualquer indústria é fácil de ver isso. Os fabricantes de um produto confiam nele? Além de fazer propaganda, eles consomem seu produto? Já vi restaurantes onde o dono não comia lá: óbvio que eu fui em outro lugar. Já vi desenvolvedores que não usavam seu próprio produto e, portanto, ignoravam problemas óbvios. Inclusive, já fui um desses.

Muitas vezes, quando eu pego um manual de instruções ou um livro, eu fico tentando decifrar o que seus autores escreveram: pergunto se eles tentaram se instruir pelo que eles mesmos escreveram. Ficou claro que não.

Mas esse conceito pode ser aplicado para muito além da tecnologia. Basta ver a quantidade de discursantes que não comem sua própria comida de cachorro: deixam para os outros cumprirem o que eles querem que seja cumprido, mas não cumprem o que eles mesmos pregam.

Falam um monte, prometem um monte, e até mesmo fingem que cumprem até a hora em que a situação aperta: é fácil falar de honestidade até que ela é posta à prova. É fácil dar um discurso inflamado contra X ou Y, mas usar esse mesmo X ou Y às escondidas. É bem comum falar que não tem preconceito até a hora em que se... tem preconceito.

Evidentemente, a maioria das pessoas não come a sua própria comida de cachorro. Elas deixam para que os outros a comam, mesmo que ela não alimente (como é o caso da maioria dos discursos recheados de platitudes) ou esteja estragada.

A maior prova de honestidade é comer sua própria comida de cachorro. É gostoso (ou não, depende da mão do cozinheiro) e faz bem. Na melhor das hipóteses, ela permite a alguém refinar seu trabalho; na pior das hipóteses, desmascara.

(Fonte da imagem: slava/Flickr - e aliás, notar semelhança com o cachorro da necessidade)

[1] No sentido estrito, esse exemplo não é o mais adequado, pois podem haver outras motivações técnicas para que um funcionário não necessariamente use os produtos da empresa. Mas aqui ele é bom o suficiente.