<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Produtividade | AkitaOnRails.com</title><link>https://akitaonrails.github.io/tags/produtividade/</link><description>Blog do Fabio Akita do Canal do YouTube 'Akitando' falando sobre tecnologia, carreira e coisas geek.</description><generator>Hugo -- gohugo.io</generator><language>pt-BR</language><lastBuildDate>Mon, 19 Oct 2026 23:20:48 +0000</lastBuildDate><atom:link href="https://akitaonrails.github.io/tags/produtividade/index.xml" rel="self" type="application/rss+xml"/><item><title>[Akitando] #131 - Sua Segurança é uma DROGA | Gerenciadores de Senhas, 2FA, Encriptação</title><link>https://akitaonrails.github.io/2022/11/08/akitando-131-sua-seguranca-e-uma-droga-gerenciadores-de-senhas-2fa-encriptacao/</link><guid isPermaLink="true">https://akitaonrails.github.io/2022/11/08/akitando-131-sua-seguranca-e-uma-droga-gerenciadores-de-senhas-2fa-encriptacao/</guid><pubDate>Tue, 08 Nov 2022 10:20:00 -0300</pubDate><description>&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/s7ldn31OEFc"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;Você já deve ter consciência que não deveria estar usando a mesma senha pra tudo, nem senhas curtas, nem senhas fáceis, e não deveria estar recebendo código 2FA via SMS, e deveria ter habilitado encriptação nos seus HDs.&lt;/p&gt;
&lt;p&gt;Mas por quê? Hoje quero demonstrar porque todas essas &amp;ldquo;boas práticas&amp;rdquo; que todo mundo tá careca de saber, e até hoje tem preguiça de colocar em prática, realmente significa. Vamos entender.&lt;/p&gt;</description><content:encoded><![CDATA[

<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/s7ldn31OEFc"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>Você já deve ter consciência que não deveria estar usando a mesma senha pra tudo, nem senhas curtas, nem senhas fáceis, e não deveria estar recebendo código 2FA via SMS, e deveria ter habilitado encriptação nos seus HDs.</p>
<p>Mas por quê? Hoje quero demonstrar porque todas essas &ldquo;boas práticas&rdquo; que todo mundo tá careca de saber, e até hoje tem preguiça de colocar em prática, realmente significa. Vamos entender.</p>
<p>== Errata</p>
<p>3:57 - eu falo que o Mitnick não mostra o programa mas eu que não prestei atenção, é o bom e velho HASHCAT. Procurem no Google pra saber a respeito.</p>
<p>== Capítulos</p>
<ul>
<li>00:00 - Intro</li>
<li>01:14 - Cap 01 - Pra que Senhas Fortes? Quebrando senhas</li>
<li>06:11 - Cap 02 - Como se Guarda Senhas no Banco de Dados? bcrypt vs sha512</li>
<li>09:41 - Cap 03 - Pra que Servem Gerenciadores de Senhas? Bitwarden</li>
<li>17:17 - Cap 04 - Como funciona Two-Factor Authentication? TOTP</li>
<li>22:32 - Cap 05 - Como se pega um Ransomware? Pirataria</li>
<li>31:49 - Cap 06 - Encripte seus Drives</li>
<li>33:59 - Cap 07 - Veracrypt: Segredo do Segredo</li>
<li>40:44 - Bloopers</li>
</ul>
<p>== Links</p>
<ul>
<li>How Easy It Is To Crack Your Password, With Kevin Mitnick (<a href="https://www.youtube.com/watch?v=K-96JmC2AkE"target="_blank" rel="noopener">https://www.youtube.com/watch?v=K-96JmC2AkE</a>)</li>
<li>Hashcat (<a href="https://hashcat.net/hashcat/"target="_blank" rel="noopener">https://hashcat.net/hashcat/</a>)</li>
<li>Bitwarden (<a href="https://bitwarden.com/"target="_blank" rel="noopener">https://bitwarden.com/</a>)</li>
<li>Host Your Own Open Source Password Manager (<a href="https://bitwarden.com/blog/host-your-own-open-source-password-manager/"target="_blank" rel="noopener">https://bitwarden.com/blog/host-your-own-open-source-password-manager/</a>)</li>
<li>Authy (<a href="https://authy.com/"target="_blank" rel="noopener">https://authy.com/</a>)</li>
<li>Veracrypt (<a href="https://www.veracrypt.fr/en/Home.html"target="_blank" rel="noopener">https://www.veracrypt.fr/en/Home.html</a>)</li>
</ul>
<h2>SCRIPT<span class="hx:absolute hx:-mt-20" id="script"></span>
    <a href="#script" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Olá pessoal, Fabio Akita</p>
<p>Você é iniciante em programação ou já trabalha com tecnologia? Usa a mesma senha pra tudo? Anota senha num arquivo texto no seu dropbox? Baixa instaladores piratas de coisas como Photoshop ou cheats pros seus jogos? Recebe o código de autenticação two factor via SMS? Pois bem, hoje é o dia de saber porque você tá fazendo tudo errado e também porque.</p>
<p>Mais do que isso, qual a diferença de usar um SHA256 ou bcrypt pra gerar hash de senha pra gravar no banco? Como funciona o algoritmo de two factor? Que aplicativos devo usar de fato pra estar minimamente protegido? Finalmente vamos explorar um pouco mais sobre segurança pessoal e um pouco de como essas coisas funcionam por baixo dos panos. Então o episódio deve servir tanto pra programadores como pra quem só está preocupado em se proteger. E não importa o que faça, você nunca vai estar 100% protegido.</p>
<p>(&hellip;)</p>
<p>Meses atrás eu já tinha feito um video falando um pouco sobre hacking, consultorias de segurança e como esse mercado idiota de selo de segurança é uma grande porcaria. Depois assistam aquele video também. Mas hoje é sobre segurança profissional e não infosec.</p>
<p>A primeira coisa mais básica que todo mundo erra é a famosa recomendação de usar uma senha forte diferente pra cada site que tem conta. Senhas fortes é usar o máximo de caracteres diferentes possíveis, incluindo letras minúsculas e maiúsculas, números, caracteres especiais como cerquilha, asterisco, e ter um comprimento de no mínimo uns 12 caracteres. Ideal é preencher o campo de senha até o máximo que permite. Sites que até hoje limitam a senha a coisas ridículas como 8 ou 10 caracteres foram feitos por imbecis morônicos amadores que não entendem absolutamente nada de segurança.</p>
<p>Vamos entender de verdade porque isso é importante. Tem um video de 2018 de ninguém menos que Kevin Mitnick, um dos hackers mais famosos do mundo. Não porque é o melhor, só que virou celebridade na época em que foi preso. Nesse video ele começa demonstrando como uma pessoa normal poderia pensar em fazer uma senha que acha forte. Pra começar, vai num gerador de palavras aleatórias e escolhe uma que acha comprido, como &ldquo;quadrilateral&rdquo;, que tem nada menos que 13 letras. Olha só, deve ser forte né?</p>
<p>Mas só isso não parece seguro. Vamos adicionar uns números e caracteres especiais no fim como &ldquo;1&rdquo;, &ldquo;2&rdquo;, asterisco e cifrão. Mas mesmo assim ainda não parece seguro. Uma coisa que todo mundo faz é converter palavras em leet codes. Leet code é trocar &ldquo;A&rdquo; pelo número 4 ou arroba, o &ldquo;i&rdquo; pelo número &ldquo;1&rdquo;, &ldquo;e&rdquo; por &ldquo;3&rdquo; e assim por diante. E olha só, agora assim, parece uma senha forte, não parece? Uma senha de 17 caracteres misturando letras, números, caracteres especiais.</p>
<p>A história hipotécia que ele conta é que conseguiu copiar o banco de dados de senhas do Windows de alguém. O Windows antigo não grava sua senha aberta, passa por um algoritmo de hash. Lembra o que é hashing? Eu explico isso no 1o video de criptografia. Assiste depois. É como uma impressão digital, não é encriptação. Ele passa essa senha por uma função que cospe uma string de tamanho fixo. Se fosse uma senha de 2 caracteres ou 100 caracteres, no final essa função cospe uma string com o mesmo tamanho fixo de 512 bits. Ou seja, pra saber se adivinhamos a senha, precisamos passar por essa mesma função e comparar o hash gerado com o hash que estava no banco de dados do Windows.</p>
<p>Todo desenvolvedor web já fez isso alguma vez na vida. Quando o usuário se cadastra no seu site e digita a senha no formulário, você passa por uma função de hashing como SHA512 da vida e grava o hash no banco, na esperança que se alguém um dia conseguir roubar seu banco de dados, pelo menos as senhas não vão estar facilmente visíveis. E agora quero mostrar porque só isso não ajuda em nada e tanto esse seu site quanto a autenticação antiga do Windows com NTLM são ruins.</p>
<p>O Mitnick usa um programa que não mostra qual é pra quebrar essa senha. Provavelmente usa uma mistura de rainbow tables, ataque de dicionário e processamento paralelo em GPUs pra gerar hashes e tentar quebrar na força bruta. Ele já tem o hash que quer achar, e a GPU vai gerando hashes a partir do dicionário e comparando pra ver se acha. Já vou explicar o que é cada uma dessas coisas, mas olhem no video. A máquina dele de 2018 tem nada menos que 8 GPUs GTX 1080 em paralelo. Lembrando que essas GPUs são 3 gerações defasadas, depois veio a RTX 2080, depois saiu a RTX 3080 que por acaso é a que eu tenho, e já foi lançada a nova RTX 4090.</p>
<p>E é isso, em menos de 1 minuto rodando, aquela nossa senha que parecia forte, foi quebrada. Nem 1 minuto. 17 caracteres, com números e letras especiais misturado. Só 1 minuto pra quebrar em 2018. Em 2022, com meia dúzia de RTX 3090 Ti rodando, essa senha pode ser quebrada em segundos. E agora? Tá lembrando a senha que você usa pra proteger seu email? Suas contas pessoais? Olha só, é a mesma senha pra tudo? E sua senha é mais curta e mais fraca que essa que eu mostrei? Nem sei pra que você se incomoda de colocar senha, deixa tudo aberto de uma vez, é a mesma coisa.</p>
<p>&ldquo;Ahhh, mas ninguém nem sabe que eu existo.&rdquo; É verdade. Todo mundo pensa que ninguém vai se importar com você. Afinal você é insignificante, ninguém te segue nas redes sociais, ninguém vai tentar quebrar justamente suas contas. E é aí que você se engana. Todo ano dezenas de sites ao redor do mundo tem sua infraestrutura comprometida por diversos motivos. Por exemplo, em Janeiro de 2022, via uma conta de funcionário interno, vazou uma quantidade gigante de emails, números de telefone e muito mais. Você tem conta no Twitter? Provavelmente seu email agora está no banco de dados de gente que vai tentar quebrar contas.</p>
<p>Mas não é só isso. Existe um site chamado &ldquo;Have I been Pwned&rdquo; que documenta incidentes como esse do Twitter. São eventos grandes e de muita repercussão e no banco de dados deles, no momento que estou escrevendo este episódio, tem documentado a invasão de mais de 600 sites, mais de 11 bilhões de contas que vazaram. Sim, seu email e possivelmente o hash da sua senha, já vazaram e tem robôs nesse exato momento tentando entrar em uma de suas contas.</p>
<p>Antes de falar de como dificultar isso. Vamos entender um pouco mais por baixo dos panos pra você que é programador. Todo site bem feito nunca grava sua senha aberta. Sempre vai passar por um algoritmo de hashing. Mas não é qualquer algoritmo como MD5 ou SHA512. Não, ele vai usar um algoritmo de derivação de chaves, como bcrypt ou PBKDF2 ou o mais novo Argon2. Se você já usou um framework web como Rails ou Django, já deve ter visto esses nomes.</p>
<p>Qual a diferença de um algoritmo de hash como SHA512 e um algoritmo de derivação de chaves como bcrypt? É o tempo de execução. Um SHA512 foi desenhado pra ser eficiente e rápido. Ele é usado pra rapidamente conseguirmos gerar uma impressão digital de um PDF ou algo assim pra assinarmos digitalmente. É bom pra passarmos um arquivo que fizemos download como a ISO de uma distro Linux e checar com o SHA no site deles pra ver se o download veio perfeito. Mas justamente porque é eficiente, que ele não presta pra fazer hash de senhas. Bizarro isso né? Pensa: por que ser eficiente é ruim nesse caso?</p>
<p>Quando um hacker como um Mitnick roda o tal programa dele, precisa ir tentando diversas combinações de letras até achar a sua senha. E a cada tentativa ele precisa rodar pelo mesmo algoritmo de hash pra comparar com o hash que está no banco de dados que foi vazado. Se o algoritmo de hash for eficiente, é rápido gerar milhões ou até bilhões de hashes por segundo. Por isso usamos um bcrypt ou PBKDF2, porque não tem jeito de fazer esses algoritmos serem mais rápidos, faz parte do design deles serem lentos de rodar. Isso dificulta o trabalho de quebrar senhas. As GPUs dele vão executar bem mais lento, de bilhões de hashes por segundo com um SHA512 vai cair pra centenas de hashes de bcrypt. Estamos dificultando a vida do hacker, e isso sempre é bom.</p>
<p>Por isso, se você ver um SHA512 sendo usado pra hashear senhas, tá errado, tem que ser bcrypt ou PBKDF2. Eles são uma categoria diferente. Não são algoritmos de hash e sim de derivação de senhas. Como o nome diz, foram feitos pra pegar uma senha curta ou fraca e tentar derivar uma senha mais longa e mais forte. Além disso, esse é o motivo de porque todo sistema de autenticação minimamente seguro também faz uso de salts.</p>
<p>Salt é um número aleatório. Ele vai gravado aberto na tabela e o hash gerado não é só da senha, e sim da senha concatenado com esse salt. Digamos que duas pessoas no site usem a mesma senha &ldquo;teste1234&rdquo;, que todo mundo usa. O hash dos dois acabaria sendo o mesmo. Portanto quando o hacker quebrar a senha de um, automaticamente tem acesso à conta dos outros usuários que tem a mesma senha. Mas se o salt for aleatório pra cada usuário, o hash dessa senha, concatenado com o salt, vai ser diferente. Agora dificultamos mais ainda pro hacker. Se ele conseguir quebrar a senha de um deles, não tem como saber que o outro também usa a mesma senha. Ele vai precisar repetir a força bruta pros dois, pra chegar na mesma senha.</p>
<p>Mas os hackers não são burros. Obviamente todo mundo sabe que um site bem feito vai usar bcrypt da vida. E sabe que ficar gerando hash de bcrypt é lento. Por isso eles colaboram pra gerar tabelas pré-computadas. Começa pegando um dicionário grande de palavras em inglês. E gera o bcrypt de todas e grava num banco de dados. Agora pega cada palavra e concatena com milhões de combinações diferentes de números e letras especiais, antes e depois. Daí também gera o bcrypt de todas as palavras convertidas em leet code. E assim por diante.</p>
<p>Nas deep web da vida você não acha só o banco de dados vazado dos sites com Twitter ou Adobe. Também tem pra comprar esses bancos de dados de hashes pré-computados. É isso que chamamos de Rainbow Tables. Em vez de gastar tempo computando o bcrypt de tudo na mão, é mais fácil gastar gigabytes ou terabytes de espaço num banco de dados e cruzar com o hash do banco vazado. Comparar milhões de linhas de um banco de dados é super rápido hoje em dia. Em questão de minutos, a poucas horas, dá pra achar todo mundo que usou senhas fracas. Esses vão se foder primeiro. Portanto o hacker troca o trabalho de computar hashes pesadas pelo trabalho mais rápido de procura num banco de dados gigante de hashes pré-computadas.</p>
<p>A única forma de ficar minimamente seguro é usar senhas que não são facilmente deriváveis de palavras em dicionários. Por isso que toda vez falamos que você precisa usar senhas geradas aleatoriamente. Porque não vai ter em nenhum dicionário, o hacker vai ser obrigado a tentar achar via força bruta testando todas as combinações de todos os caracteres possíveis. O alfabeto tem 26 letras. Dobre isso porque tem maiúsculo e minúsculo. Temos 10 números. E temos pelo menos 30 caracteres especiais como asterisco ou parênteses.</p>
<p>Isso dá um total de 26 mais 26 mais 10 mais 30 caracteres que são 92 possíveis letras. Se fizermos uma senha de 10 caracteres aleatórios, o hacker na pior das hipóteses vai precisar calcular hash pra 92 vezes 92 vezes 92 vezes 92 &hellip; 10 vezes. Isso dá nada menos que 43 quintilhões de possibilidades. Se aumentar só um caractere pra 11, aumentamos as possibilidades mais 92 vezes e o número sobe pra 3 sextilhões. Cada caracter a mais dificulta 92 vezes. Quanto mais longa for a senha, mais fode a vida do hacker.</p>
<p>Então vou repetir: nunca use senhas derivadas de palavras que existem. Todas as combinações que você imaginar de embaralhar um pouquinho, tipo colocar arroba no lugar do &ldquo;a&rdquo; ou exclamação no lugar do &ldquo;i&rdquo; ou &ldquo;l&rdquo;, tudo isso já foi pré-computado e existe numa rainbow table. Sempre use senhas totalmente aleatórias. E sempre use senhas o mais longo quanto for possível. 50 caracteres, 80 caracteres. O máximo que o formulário de cadastro do site deixar. E sim, você não deve ser capaz de conseguir decorar essa senha, e esse é o objetivo. Se você consegue decorar, significa que a senha é fraca e facilmente quebrável.</p>
<p>Na pior da pior das hipóteses, todo navegador moderno como Firefox, Safari, Edge ou Chrome, tem já embutido um gerenciador de senhas. Não recomendo usar deles porque tem alternativas melhores, mas eu diria que se você for nesse nível de preguiçoso, pelo menos use do navegador. Único inconveniente é que vai precisar usar o mesmo navegador no seu PC de casa, no notebook e no smartphone, pra ter acesso às suas senhas, porque esses navegadores conseguem sincronizar o banco de dados via sua conta da Apple ou Google ou Microsoft da vida. Significa que pelo menos a versão encriptada dessas senhas pode estar armazenada nos servidores do Google ou Apple. Mas é um risco que vale a pena correr, muito menos risco do que usar a mesma senha fácil pra tudo.</p>
<p>O ideal é não ter esse banco de senhas, mesmo encriptado, no servidor de ninguém e por isso eu gosto do aplicativo Bitwarden. Ele é código-aberto, então você mesmo pode auditar o código se quiser. E tem a opção de você mesmo configurar um servidor pra manter seu próprio banco encriptado de senhas. Daí a extensão no seu navegador vai puxar tudo de um servidor que só você controla. Eu só recomendo fazer isso se você já for um devops avançado e experiente. Pra 99% das pessoas o melhor é confiar mesmo na hospedagem de algum serviço que vai ter segurança melhor do que a sua. Seja o próprio Bitwarden, 1password, Lastpass ou similares.</p>
<p>Olhem um exemplo de senha gerado pelo Bitwarden. É esse tipo de senha que você deve usar nos sites por aí. E como vai estar gravado e encriptado, não precisa se preocupar em decorar nada. Gere uma senha gigante e aleatória pra cada site. Entre em cada um dos sites que tem conta e altere sua senha hoje mesmo. Lembra que eu falei que vira e mexe algum site é hackeado e o banco de dados acaba na mão de algum hacker? Mesmo se ele conseguir quebrar sua senha desse site, ter senhas diferentes significa que mesmo que ele mande os robôs dele ficar tentando em dezenas de outros sites, essa senha não vai abrir nada pra ele, porque só é usado nesse um site. Quando você usa a mesma senha pra tudo, basta um site que você usa se ferrar que ele ganha acesso a todos os outros sites que você usa. Esse é o risco real e imediato.</p>
<p>A única senha que vai precisar decorar é a senha mestra que abre o banco encriptado desses aplicativos. Nesse caso, infelizmente, vai precisar decorar então não dá pra ser uma senha totalmente aleatória, então no mínimo use uma passphrase e não um password. Literalmente pense numa frase longa, de mais de 20 caracteres, no mínimo. Alguma coisa tipo &ldquo;acomidaqueeumaisgostoémilho&rdquo; ou &ldquo;aviagemqueeumaisgosteifoiprojapao&rdquo;. Todos os bons aplicativos vão pedir essa senha da primeira vez pra sincronizar o banco encriptado de senhas e eles costumam ter opção pra habilitar autenticação via impressão digital, no caso de smartphones. Daí fica mais prático de usar.</p>
<p>&ldquo;Akita, qual desses aplicativos é melhor?&rdquo; Foda-se. Use qualquer um deles. Tem gente que morre se não for 1password. Tem gente que acha o LastPass feio. Tem gente que acha um Bitwarden mais ou menos. Tem gente que prefere mesmo usar o do próprio Google ou Microsoft no navegador. Tanto faz. O mais importante é a passphrase mestra e você hoje mesmo sair alterando a senha de todos, todos os sites que acessa, e cadastrar senhas super longas e aleatórias diferentes pra cada uma.</p>
<p>A próxima recomendação é habilitar two factor authentication, o famoso 2FA ou autenticação de dois fatores. Que é aquele código que muda a cada 30 segundos e que recebe via SMS ou usa um aplicativo como Microsoft Authenticator ou Authy. Já de cara vou falar pra evitar o Google Authenticator. Sempre dá problema essa bosta, especialmente se você troca de celular e precisa instalar de novo. Use qualquer um, menos do Google. Aplicativos que gerenciam senhas como 1password ou o Bitwarden, já tem suporte a 2FA também, então pode usar tudo no mesmo aplicativo.</p>
<p>Outra coisa: eu não recomendo de jeito nenhum receber esse código por SMS. Celulares podem ser roubados. E não importa se seu celular tem senha. Basta tirar o SIM card e colocar em outro celular. Ou posso usar engenharia social. Ligar na Vivo ou Claro e enganar o atendente. Um hacker bom de engenharia social já tem seus dados, seu nome, RG, CPF, email, nome da mãe e tudo mais. Não são informações difíceis de achar dado que diversos sites do governo já foram hackeados e bancos de dados com todas essas informações já vazaram. Todo hacker já sabe seus dados.</p>
<p>Conseguir roubar seu número de celular é questão de tempo. Fora o inconveniente se você realmente perder o celular. E agora? Como você faz login nos sites que vão pedir código de dois fatores? Vai te mandar por SMS pro celular que você perdeu ou foi roubado. Até conseguir outro SIM card, vai ficar uns dias sem conseguir acessar suas coisas. Um puta pé no saco. E como Murphy sempre é eficiente nessas horas, vai ser justo num domingo de feriado prolongado e bem num dia que você precisava acessar um site importante no meio de uma viagem.</p>
<p>Por que, lógico, durante essa viagem você encheu a cara na balada e só percebeu que tava sem celular quando voltou pro hotel. É assim que você se ferra à toa. E nem precisa de muito. Basta estar num lugar com sinal fraco de celular ou sem sinal. Ou estar viajando sem roaming. Como vai receber SMS sem sinal?</p>
<p>O que é esse tal de two-factor? É uma função que recebe pelo menos dois parâmetros, um segredo compartilhado e uma hora do sistema e gera um código. O padrão mais conhecido é o TOTP ou Time-based One-Time Password, ou literalmente senha descartável baseada em tempo, que é definida na RFC 6238. O que acontece é o seguinte, digamos que você entre num site novo e vai cadastrar sua conta. Preenche tudo, coloca sua senha e manda habilitar two factor.</p>
<p>O site te dá um QR Code, que tem um código que chamamos de seed ou semente, esse é o segredo compartilhado entre o servidor e nosso app. Se estiver num app como o Bitwarden, vai ter um campo chamado Authenticator Key (TOTP) que é onde se copia e cola o seed, que costuma estar embaixo do QR Code. Ou se estiver num app separado como o Authy, pode abrir a câmera dele e ler o QR Code. Além do seed, nesse QR Code vai ter informações extras pra facilitar o cadastro como o nome do site, URL e tals.</p>
<p>E pronto. O site vai pedir pra confirmar se tudo correu bem, e pra isso é só digitar o código que o app mostra. Ele vai checar e confirmar. Agora, toda vez que fizer um novo login, depois da checagem de senha,  vai pedir o código de two factor. Só abrir o app, e digitar o código dentro da janela de tempo que ele indica.</p>
<p>O que acontece é o seguinte, depois do cadastro via QR Code, o servidor tem um segredo gravado e seu app tem esse segredo também gravado no app, ambos encriptados. Quando você abre o app, ele pega o horário atual, arredondado em períodos de 30 ou 60 segundos, por isso tem o timerzinho toda vez. O código que aparece é derivado de passar o segredo que é o seed mais o horário atual e gerar um hash baseado num algoritmo como HMAC-SHA1. Ele trunca o resultado em 6 dígitos e é isso que você vê no app.</p>
<p>Quando digita o código e manda pro servidor, lá vai fazer a mesma coisa, pegar o segredo, o horário no servidor, e gerar o mesmo código via HMAC-SHA1. Se o código bater com o que você digitou, significa que é você mesmo. Se não bater, pode ser que justo passou o período de 30 ou 60 segundos e vai pedir pra digitar de novo. A vantagem de uma senha secundária dessas é que mesmo que alguém veja esse código, ele só tem validade dentro de uma janela de menos de 1 minuto. Parece pouco tempo, mas na realidade é bastante, já falo sobre isso. De qualquer forma, como é baseado no horário, por isso é importante seu celular ter horário sincronizado com um servidor de NTP. Quando você tem problemas, primeira coisa é checar isso.</p>
<p>Na prática parece um troço complicado. Já tem que ter senha complicada, agora depois de digitar a senha ainda tem esse troço que dá gatilho na minha ansiedade com esse timer maldito mandando digitar rápido. Não é a toa que muita gente mais sensível ou mais preguiçosa realmente não quer ter que lidar com isso. Mas esse é o preço que se paga pela internet ter ficado popular.</p>
<p>Vamos resumir o que falamos até agora: instale um aplicativo de gerenciador de senhas que, de preferência, também tenha suporte a two factor authentication. Minhas escolha pessoal é o Bitwarden, mas é mais por costume. Garanta que a senha mestra é uma frase longa e que realmente só você saiba. Não anote num post-it embaixo do seu teclado. E a partir daí crie senhas hiper longas e aleatórias e habilite two factor em todas as suas contas. Com isso, mesmo se outro site que você tenha conta for invadido e alguém conseguir fazer força bruta pra quebrar sua senha, na pior das hipóteses não vai conseguir usar essa senha em nenhum outro site que você tenha conta, porque são todas com senhas diferentes.</p>
<p>A gente fala two factor ou autenticação de dois fatores, porque em segurança se fala em ter no mínimo 3 fatores de segurança. O mais simples é o alguma coisa que você sabe, que é sua senha. O segundo fator é alguma coisa que você tem, que pode ser seu aplicativo de two factor como o Authy ou o equivalente em hardware disso que seria algo com um Yubikey. Eu nem vou falar de Yubikey hoje, mas teoricamente ele é melhor do que só um app de two factor. Problema que nem tudo suporta hardware keys e a usabilidade não é exatamente a mais simples. Mas vale a pena dar uma pesquisada se tiver interesse.</p>
<p>O terceiro fator é alguma coisa que você é. No caso costumamos nos referir à biometria, como sua face num iPhone ou com Windows Hello, ou o mais comum que é impressão digital. Hoje em dia isso é mais comum em smartphones e muitos notebooks. Antigamente eram muito mau feitos, mas acho que hoje em dia a maioria das implementações é segura o suficiente. Em smartphones como iPhone, sua impressão digital não fica armazenada no mesmo lugar que seus dados e aplicativos. Ele fica numa memória separada que o sistema operacional não tem acesso e controlado por um chip independente da sua CPU.</p>
<p>Isso é o que chamamos de Secure Enclave, que num iPhone é o chip T2, num PC é o chip de TPM ou Trusted Platform Module, que o Windows 11 quis tentar ser obrigatório e deu treta e acho que voltaram atrás. Mas o correto é mesmo ter um TPM no seu sistema, um chip e memória encriptada que mesmo que seu computador seja comprometido por malwares, esse chip continuaria intacto.</p>
<p>E falando em malwares, agora vem a parte mais problemática: evite ao máximo pegar virus e malwares. Parece meio óbvio, mas todo mundo a essa altura já pegou um malware. Se você baixou pirataria recentemente, como photoshop, com certeza já tem malware instalado. Filmes e música tem baixa probabilidade de ter. Só se alguém descobriu um bug nas bibliotecas que fazem decoding de filmes e consegue injetar malware via algum tipo de buffer overflow da vida. Antigamente tinha em imagens, não lembro se era PNG. Mas esses componentes costumam ser bem maduros e não mudam mais, então as chances são baixas.</p>
<p>O problema são executáveis mesmo. Instaladores de Photoshop por exemplo, esses são campeões de carregar coisas como Ransomwares. Se você tem Photoshop instalado, eu faria backup de todos os seus dados importantes num HD externo hoje, logo depois de terminar de assistir, porque provavelmente tem um ransomware encriptando seus arquivos aos poucos em background e você nem tá sabendo.</p>
<p>Povo que é gamer e baixa cheats e trainers pra games, muito provavelmente vocês estão infectados também. Você acha que seu computador tá ficando lento porque tem muitos games. Mas na realidade é porque tem virus e malware rodando aí já. E não adianta baixar um antivirus e tentar rodar. Muitos virus conseguem se esconder de antivirus. Uma vez infectado já é meio tarde.</p>
<p>Se quiser pelo menos checar, tem vários antivirus que tem opção de queimar num pendrive e bootar direto dele. Assim o antivirus roda antes do seu Windows bootar, aí o virus não tem chance de se esconder. Acho que marcas como Kaspersky, Comodo, ESET, Avira e outros tem essa opção. Vá num computador que tem mais certeza que tá limpo, baixe a ISO. Num Windows, use um programa como o Rufus e grave a imagem num pendrive. E agora boote pelo pendrive e mande escanear seu computador. Mas lembre-se, só porque o antivirus não achou nada, não quer dizer que você tá limpo.</p>
<p>A regra é simples: não baixe pirataria. Eu sei, você quer jogar de graça. Mas não rola. Pelo menos tenha um PC numa rede isolada que usa só pra jogar e nunca pra acessar coisas como seu banco, no mesmo computador. Se você instala games piratas baixado em bittorrent ou de sites como mega da vida, as chances de já estar contaminado são enormes. Nem tô brincando, serião. Em particular se você roda Windows.</p>
<p>Quem joga em Linux, usando um ambiente isolado de emulação como Wine com Proton, tem menos chances de ter problemas, porque um virus feito pra Windows não vai infectar um Linux ou um Mac. Virus é específico pro sistema operacional que quer contaminar. Problema de jogar em Linux é que muitos jogos não permitem jogar online em ambiente emulado porque eles não conseguem carregar os programas de anti-cheat. Depende do jogo, acho que um Overwatch da vida já dá pra jogar, mas Fortnite parece que ainda não. Se for como eu que só joga single player, aí Proton já é bem mais útil.</p>
<p>O tipo de malware que ficou mais famoso são os ransomware. Eles ficam trabalhando escondidos no seu PC sem você perceber. Vão encriptando seus arquivos um a um. E quando você percebe que tem algo de errado, a maioria dos seus arquivos tão lá ainda mas encriptados. Daí aparece a famosa janela de resgate, onde falam que tem a chave pra desencriptar, mas só vai te dar se mandar uma certa quantia de bitcoins pra eles. Tem garantia que eles vão te dar a chave? Não. Tem como recuperar os dados depois que foram encriptados. Não. Você se fodeu. Só aceita que dói menos, e você foi avisado, se arriscou porque quis.</p>
<p>A única forma de garantia que você tem caso seus arquivos sejam encriptados por um ransomware é ter backup. E tomar cuidado pra ter várias semanas de backups, porque quando o ransomware começou a criptografar seus arquivos, você pode estar fazendo backup dos arquivos já criptografados. Então precisa garantir que tem versões antigas dos arquivos, de antes do ransomware ter começado a te foder. Por isso eu vim falando do meu NAS e como sistemas de arquivos com suporte a snapshot como btrfs ou ZFS fazem a diferença nesses dados. Eu tenho snapshots de várias semanas e meses no meu backup, então mesmo que um ransomware apareça no meu PC, consigo recuperar praticamente tudo sem pagar nada.</p>
<p>Se você usa Linux, recomendo usar o btrfs e o programa Timeshift pra configurar tudo. Não é tema do video de hoje, mas snapshots são leves, ocupam pouco espaço, e você pode recuperar arquivos que foram apagados meses atrás se configurar direito, e é nativo do sistema operacional. Se usa Windows, precisa ter um backup que suporte um sistema de snapshots, mesmo que seja online. Serviços como o BlackBlaze. Dêem uma olhada. Backup em cloud é melhor que backup nenhum. A desvantagem é que depende da sua conexão de internet. Se perder tudo e precisar recuperar, vai demorar horas ou dias pra baixar tudo de volta via internet. Por isso o melhor é backup físico local, tipo HDs externos ou um NAS de verdade.</p>
<p>Na prática, não instale jogos nem programas piratas. Você vai pegar malwares. Se precisar muito rodar um programa pirata, abra uma máquina virtual, seja o VirtualBox, ou se for pra rodar só uma vez, use o Windows Sandbox, que vem no próprio Windows. Se não sabia disso, basta abrir o programa de ligar funcionalidades opcionais, ticar aqui em Windows Sandbox e deixar ele se instalar e reiniciar. E pronto, olha só, eu abro o Sandbox e é um Windows vazio numa máquina virtual. Quando fechar essa janela, tudo que tem dentro é apagado. Perfeito pra rodar programas estranhos sem riscos pro seu Windows principal.</p>
<p>Pra rodar máquina virtual seu PC precisa ser mais forte que a média. Nada abaixo de 16 giga de RAM. E quanto mais cores tiver sua CPU, melhor, de preferência uma CPU com 8 cores ou mais. Meu PC é um Ryzen 9 5950X com 64 giga de RAM. Isso já é demais pra maioria das pessoas, você não precisa de tudo isso. Eu gosto de brincar com máquinas virtuais porque posso fazer experimentos destrutivos e se eu quebrar a máquina, basta voltar o último snapshot dele que funcionava. Pra testar coisas, estudar sobre redes, estudar sobre vulnerabilidades e segurança, é a melhor coisa.</p>
<p>Falando em Windows, muita gente ignora isso mas depois dos tempos sombrios de Windows XP, que era totalmente furado, o Windows 10 e 11 até que são bonzinhos em segurança. Se seu PC não for muito antigo, configure sua BIOS pra habilitar duas coisas: o TPM que falei antes e o Secure Boot. Secure Boot em particular é bem importante. Se algum malware tentar se injetar em arquivos importantes pro boot do Windows, a própria BIOS vai detectar e impedir o boot. Uma das formas de um virus se esconder de um antivirus é justamente se injetar na kernel ou em drivers e se carregar no boot, daí ele consegue se esconder dos antivirus.</p>
<p>Vale a pena fuçar o aplicativo de Security do Windows. Mas não desligue nada nele. Tem muito tutorial bosta que fala pra desligar coisas como o Defender. Sim, o Defender custa recursos e em máquinas fraquinhas pode deixar um pouco mais lento, mas não, não compensa o risco de desligar segurança. Se tem máquina fraca, o melhor é desistir de Windows e migrar pra Linux se puder. Ou fazer upgrade de hardware, como instalar um SSD caso não tenha.</p>
<p>Um dos grandes problemas do Windows são drivers. Hoje em dia muitos drivers já vem pelo Windows Update e esses teoricamente são checados e são seguros. Mas muito hardware de fabricante bosta ainda manda você baixar driver do site deles, isso quando tem. E quando procura no Google tem sites falsos com esses drivers modificados. Aí você baixa achando que é legítimo e instala um malware. Aliás, nunca baixe nenhum desses programas que prometem atualizar seus drivers automaticamente pra você e também otimizar a performance do seu PC. Muitos são malwares, a maioria é só fearware, software que fica dizendo &ldquo;olha só, achei problemas na sua máquina, me paga que eu conserto&rdquo;. É golpe. Não existe isso.</p>
<p>Não tem performance de graça, mesmo otimizando manualmente, você não vai notar tanta diferença assim de verdade. É tudo fraude. A performance que você tem logo que instala o Windows do zero é tudo que vai ter. Se quiser um pouco mais, de novo, instale Linux e mesmo assim não vai ser nada revolucionário. Trabalhe, economize e compre SSD, mais RAM ou um PC novo.</p>
<p>Por último, se tiver notebook, pense em investir num programa de VPN. Seja ExpressVPN ou NordVPN ou SurfShark ou qualquer um desses. Especialmente se usa muito redes públicas como Wifi em cafés, hotel, ou qualquer lugar fora da sua casa. Eu já expliquei nos episódios de rede como é possível ficar escutando seu tráfego. Além disso também é possível fazer &ldquo;DNS poisoning&rdquo; que é literalmente envenenar o DNS. Lembra como seu computador acha o endereço IP das coisas perguntando pro DNS? E se o DNS ou DHCP que o Wifi público que você se conectou estiver contaminado?</p>
<p>Você pode tentar baixar um programa qualquer e na realidade o DNS envenenado te redirecionou pra um site falso, tipo pra baixar a porcaria do programa de banco de um Itaú da vida. Aí você baixa um instalador falso que vai te contaminar com um malware. Todo cuidado é pouco. Não baixe nada a partir de redes que você não confia, como redes públicas. Sempre use uma VPN pelo menos pra garantir. Em alguns países do mundo como uma China ou no Oriente Médio, seu tráfego pode realmente estar sendo monitorado por agências do governo.</p>
<p>E falando em viagens, a última coisa que você precisa fazer se tem notebook é habilitar encriptação do seu HD. No Windows isso se chama BitLocker, em Macs se chama FileVault e em Linux se chama LUKS. Não importa qual sistema operacional usa, habilite encriptação. Eu não sei se não é óbvio, mas vou dizer o óbvio: aquela senha que você usa pra se logar na sua conta, não protege nada.</p>
<p>Se eu roubar seu notebook, posso tirar o SSD, NVME e plugar em outro computador e vou ter acesso a 100% dos seus dados. Simples assim. Ah sim, você é aquele animal que guarda senha num arquivo de texto no desktop do seu computador? Se eu tiver acesso ao seu computador, vou ler tudo. Macs são mais convenientes ainda. Você pode bootar ele em Target Disk Mode e ele literalmente vira um HD externo USB gigante. Basta eu conectar via USB em outro computador e vou enxergar como se fosse um pendrive gigante. Se não sabia disso, reinicie e deixe apertado a tecla T antes do boot.</p>
<p>Eu já tive um macbook roubado. Bobeei uma vez a noite, numa rua escura, com as janelas abertas e minha mochila no banco de passageiro. Motoqueiro parou do meu lado, apontou uma arma e mandou eu dar a mochila. E lá se foi meu Macbook. Minha única consolação é que tava tudo encriptado, então ninguém ia poder ver nenhum arquivo. E por sorte eu tava com Find my Mac ativado. Isso é uma grande vantagem de Macs e iPhones, que tem isso por padrão. Semanas depois alguém ligou esse Macbook e eu consegui achar ele online e mandei comando de apagar tudo remotamente. Se você tem produtos Apple, ative o Find my Mac e Find my iPhone.</p>
<p>Eu sou tão paranóico com essas coisas que mesmo HDs velhos, eu nunca jogo fora. Mesmo a maioria deles estando encriptado. Até pra destruir HDs você precisa fazer direito, porque um bom investigador forense tem técnicas pra recuperar dados de HDs em condições que você não acredita. Se for jogar um HD fora, pegue pregos, martelo e fure todos os discos. E mesmo usando partição encriptada eu ainda crio discos virtuais encriptados dentro usando um programa que uso faz anos, o Veracrypt.</p>
<p>Pra quem não conhece, o Veracrypt é o antigo TrueCrypt. Ele serve pra criar os discos virtuais mais seguros do mundo. Mesmo partição encriptada, com algum trabalho e força bruta, dá pra quebrar. Isso porque eles usam o mesmo algoritmo toda vez e é conhecido. Já no Veracrypt você pode escolher dentre uma gama de algoritmos, e criar uma partição escondida separada dentro do disco virtual encriptado, então ele teria uma partição falsa que você pode abrir caso esteja com alguém com uma arma na sua cabeça, e uma segunda partição no mesmo arquivo escondido que ninguém vai saber. Sério, dá uma estudada em Veracrypt, é animal e funciona em todo sistema operacional. Arquivos mais confidenciais, eu sempre deixo em discos criptografados por Veracrypt, porque a chance de ser quebrado é muito perto de zero.</p>
<p>So de curiosidade, deixa eu criar um disco virtual com Veracrypt. Aqui na opção de Volume Type posso escolher Hidden volume, ou volume escondido. Seguindo, agora eu posso escolher o algoritmo de encriptação. Pra ser veloz, o certo é escolher AES porque hoje em dia toda CPU acelera encriptação AES em hardware. Mas pra ser seguro, performance não é importante. Eu posso escolher qualquer outro, como esse kuznichik ou sei lá como pronuncia. E o algoritmo de hash vai ser o streebog. Vou criar um volume de 50 mega só pra demonstração aqui.</p>
<p>Agora eu coloco, lógico, uma senha super longa e super complicada como já expliquei antes, um passphrase gigante. Como é um disco virtual, posso escolher que sistema de arquivos quero que seja formatado dentro. Se quiser compatibilide com múltiplos sistemas operacionais, posso formatar em FAT já que o volume é pequeno ou exFAT. Só pra Windows posso escolher NTFS. Se for pra Linux posso escolher ext4. Vou escolher FAT mesmo.</p>
<p>Nesse outro passo ele captura o movimento do meu mouse pra gerar um número aleatório seguro. Em vez de usar um gerador pseudo aleatório como o dispositivo /dev/random que tem no Linux, eu como ser humano me mexendo, vou gerar posições aleatórias de verdade, e ele vai usar isso internamente pra criptografia dele.</p>
<p>Agora vem o truque. Ele terminou de criar o volume, formatar como ext4 e montar como drive. Lembram quando expliquei sobre imagens, drives virtuais e pontos de montagem no video de Slackware? Revejam se não lembram. Olha só, ele montou como &ldquo;/mnt/veracrypt1&rdquo;. É como se fosse um pendrive virtual. Mas essa é a partição falsa. Aqui eu vou gravar arquivos quaisquer que não são secretos de verdade. Por exemplo, vou arrastar uma imagem aqui dentro.</p>
<p>Pronto, ele fechou aquela partição e agora vai abrir outra, a de verdade que é a escondida. De novo, posso escolher outros algoritmos de encriptação pra essa partição, que vai ser protegida com outra senha. Pra simplificar, vou manter as mesmas escolhas de antes. Ele pede pra escolher o tamanho, eu tinha escolhido 50 antes, gravei uma imagem dentro, e agora posso escolher o resto do tamanho pra essa nova partição. Vou escolher tipo 20 mega só. Pra ainda ter espaço sobrando na partição falsa de antes e não ficar muito óbvio que tem uma partição escondida. Pronto, mesma coisa, ele vai formatar e no final eu posso montar.</p>
<p>Vamos montar a partição escondida e criar um arquivo secreto onde eu escreveria segredos altamente confidenciais. Pronto, montou. Navego até o ponto de montagem e olha só, tá vazio. Vamos criar o arquivo &ldquo;segredo.txt&rdquo;, abrimos e vou escrever um texto super secreto. Pronto. Tá salvo. Volto pro Veracrypt e posso desmontar.</p>
<p>Por que eu fiz tudo isso. Digamos que algum malfeitor me pegou de refém e ele sabe que eu tenho segredos nesse arquivo. E ele vai cortar meus dedos se eu ficar falando que esqueci a senha. Então não tem jeito. Vamos montar a imagem, mas vou usar a primeira senha e não a segunda. Olha só o que vai acontecer. Montou, vamos navegar lá. Lembra que na primeira partição eu tinha só gravado uma imagem? É isso que abriu. O malfeitor não sabe que existe uma segunda partição. Mas como eu abri essa, ele não tem porque duvidar de mim. Eu dei a senha pra ele, só não a que ele queria. Nosso segredo está salvo na partição escondida. Sacaram o poder do Veracrypt?</p>
<p>Pra finalizar, quando estava terminando este script alguém me mandou uma DM no Insta com um site no mínimo curioso. Olha só isso. Eu esqueci de gravar a imagem original mas postei esta story no insta no mesmo segundo. Admirem a beleza desse site só por um segundo. É o símbolo de que tudo que eu disse até agora não serve pra absolutamente nada. Porque no final do dia, um monte de gente realmente vai digitar os dados do próprio cartão num site estranho, por livre e espontânea vontade. Os hackers não precisam fazer nada muito avançado. As pessoas deixam as portas de casa abertas elas mesmas. Esse tipo de golpe não só funciona, como funciona muito bem. Não seja um otário.</p>
<p>Não importa as proteções que você tem se você é um otário que sai clicando em tudo que te mandam. Eu fiz um teste outro dia com um tweet de gemidão. Centenas de pessoas caíram e saíram xingando. Foi um dos tweets com mais acesso que eu tive. Todo mundo clica nas coisas. É impressionante. Eu nunca clico em nada. Na verdade, se vem algum email ou mensagem com link, eu imediatamente bloqueio. Nem quero saber quem é. Não tem botão que eu uso mais em rede social que de bloqueio e botão de spam no Gmail.</p>
<p>Olha alguns exemplos de emails que tá no meu spam. Eu não clico em nenhum link. Se eu não sei quem é a pessoa, ela nem devia estar me mandando mensagem. &ldquo;Ah, mas pode ser importante&rdquo;. Eu sempre parto do princípio que se for importante mesmo, essa mesma pessoa vai achar outras formas de entrar em contato comigo. Vai me ligar. Mas se ela acha que eu vou clicar num link, tá muito enganada. O tipo de golpe que de longe é o mais aplicado e de maior sucesso se chama phishing, que é ficar bombardeando as pessoas com mensagens aleatórias assim até que algum idiota clica no link. Vem via email, whatsapp, sms e muito mais. Regra de ouro: JAMAIS CLIQUE EM NENHUM LINK, JAMAIS, ZERO.</p>
<p>E é isso aí. Hoje eu dei uma pincelada rápida por vários conceitos e várias ferramentas simples. São coisas que eu realmente uso no meu dia a dia e venho usando faz anos em Windows, Mac e Linux. Recomendo que todo mundo, seja programador ou não, se interesse por esse assunto, porque no final do dia você só pode contar com você mesmo. Ninguém vai te dar segurança, você precisa criar sua própria segurança, e isso começa com as coisas mais básicas, seu próprio celular, seu próprio computador. Não se preocupar com essas coisas é que nem fazer sexo sem proteção. Uma hora vai dar merda, e quando der não tem mais como voltar atrás. Se ficaram com dúvidas, mandem nos comentários abaixo. Se curtiram o video deixem um joinha, assinem o canal e compartilhem o video com seus amigos. A gente se vê, até mais!</p>
]]></content:encoded><category>seguranca</category><category>produtividade</category><category>akitando</category></item><item><title>[Akitando] #115 - Caminho pro Melhor Teclado do Mundo!</title><link>https://akitaonrails.github.io/2022/03/07/akitando-115-caminho-pro-melhor-teclado-do-mundo/</link><guid isPermaLink="true">https://akitaonrails.github.io/2022/03/07/akitando-115-caminho-pro-melhor-teclado-do-mundo/</guid><pubDate>Mon, 07 Mar 2022 12:39:00 -0300</pubDate><description>&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/78aw1muYWQM"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;p&gt;== DESCRIÇÃO&lt;/p&gt;
&lt;p&gt;Esta é a conclusão da saga de teclados! Quero explorar quais problemas herdamos desde a era das máquinas de escrever, porque temos tantos tamanhos diferentes e tantos layouts diferentes de teclados, e se é possível chegar no teclado perfeito: o melhor teclado do mundo pra digitar rápido e evitar as dores mais comuns de digitadores como tendinite e LER. Vamos explorar!&lt;/p&gt;</description><content:encoded><![CDATA[

<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/78aw1muYWQM"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>== DESCRIÇÃO</p>
<p>Esta é a conclusão da saga de teclados! Quero explorar quais problemas herdamos desde a era das máquinas de escrever, porque temos tantos tamanhos diferentes e tantos layouts diferentes de teclados, e se é possível chegar no teclado perfeito: o melhor teclado do mundo pra digitar rápido e evitar as dores mais comuns de digitadores como tendinite e LER. Vamos explorar!</p>
<p>== Conteúdo</p>
<ul>
<li>00:00:00 - Intro: colchão, cadeira e dores</li>
<li>00:03:42 - IBM Model M, Model F, layout 100%</li>
<li>00:06:44 - Problema do Mouse, layout TKL</li>
<li>00:10:36 - Notebooks, Keychron K2, layout 75%</li>
<li>00:13:36 - Ducky, layout 65%</li>
<li>00:14:12 - Anne Pro 2, layout 60%</li>
<li>00:15:27 - layout 40%</li>
<li>00:15:58 - repensando meus teclados</li>
<li>00:17:01 - entendendo QWERTY e máquinas de escrever</li>
<li>00:19:31 - entendendo DVORAK</li>
<li>00:23:11 - entendendo COLEMAK</li>
<li>00:25:03 - entendendo WORKMAN</li>
<li>00:27:18 - o problema de todos os layouts</li>
<li>00:29:32 - o defeito herdado das máquinas de escrever</li>
<li>00:32:35 - repensando alinhamento: Planck EZ</li>
<li>00:34:41 - configurando um 40%, Oryx, layers, QMK</li>
<li>00:41:33 - como aprender a digitar rápido? keybr, monkeytype</li>
<li>00:48:32 - a fraude do CharaChorder e estenografia</li>
<li>00:52:38 - o melhor teclado? Moonlander MK1</li>
<li>00:59:55 - o melhor teclado? layout 33%!</li>
<li>01:01:56 - conclusão</li>
</ul>
<p>== Links</p>
<ul>
<li>The CharaChorder video is a scam - Read Description (<a href="https://www.youtube.com/watch?v=ARCPpUmKYiQ"target="_blank" rel="noopener">https://www.youtube.com/watch?v=ARCPpUmKYiQ</a>)</li>
<li>Taking Moonlander Ergonomics To The NEXT LEVEL With The Tripod Kit (Taking Moonlander Ergonomics To The NEXT LEVEL With The Tripod Kit)</li>
<li>A Tiny, Ultra-Affordable Keyboard You Can Build Yourself! (<a href="https://youtu.be/JqpBKuEVinw"target="_blank" rel="noopener">https://youtu.be/JqpBKuEVinw</a>)</li>
<li>Brad Colbow - Huion Kamvas 22 Plus Review (<a href="https://www.youtube.com/watch?v=GJxGzJgfYGA"target="_blank" rel="noopener">https://www.youtube.com/watch?v=GJxGzJgfYGA</a>)</li>
<li>Workman Layout (<a href="https://workmanlayout.org/"target="_blank" rel="noopener">https://workmanlayout.org/</a>)</li>
<li>Open Steno Project (<a href="http://www.openstenoproject.org/"target="_blank" rel="noopener">http://www.openstenoproject.org/</a>)</li>
</ul>
<p>== SCRIPT</p>
<p>Olá pessoal, Fabio Akita</p>
<p>Os meus videos de teclados foram alguns dos mais visualizados do canal e eu realmente achei que já tinha falado tudo que precisava sobre o assunto. Mas me enganei redondamente, e fui obrigado a rever todos os meus conceitos sobre digitação. No episódio de hoje quero falar de uma categoria de teclados especiais que acho que vai ser difícil me fazer voltar pros meus antigos. E ao mesmo tempo quero falar de alguns conceitos que muitos de vocês provavelmente nunca pensaram a respeito.</p>
<p>(&hellip;)</p>
<p>Por que muitos de nós parecemos tão obcecados com teclados? Sempre vai variar de pessoa pra pessoa, por isso nunca leve essas coisas como regras invioláveis nem nada disso. Na minha filosofia pessoal, existem no mínimo 3 coisas que eu faço absoluta questão de ter o melhor que puder conseguir. Nosso dia tem 24 horas. Um terço dessas horas, pelo menos 8 horas todo dia, a gente passa dormindo. Por isso faz sentido investir num colchão decente, com travesseiro decente, pra não acordar todo dia moído, com torcicolo e dor nas costas. Economiza em tudo, menos no seu colchão.</p>
<p>Em segundo lugar, pra todos nós que trabalhamos com programação, passamos a maior parte do tempo sentados. E não caia na armadilha das cadeiras gamers. Eu passei um tempão testando cadeiras gamer e vou dizer que a melhor gamer ainda não é melhor que uma cadeira de escritório honesta, feita pra ser realmente ergonômica. Essa que estou sentado agora é uma Hermann Miller Aeron, mas é super cara e eu acho que tem cadeira que pela metade do preço vai ser igualmente confortável. Cadeira, assim como colchão, é um troço que você precisa ir na loja, gastar algumas horas experimentando e sentir se sua lombar e tudo mais tão sustentados de verdade, se não te força numa posição estranha. Se puder, evite comprar online sem testar antes. E isso também é tudo que vou falar sobre cadeiras.</p>
<p>E em terceiro lugar tá o periférico que você vai usar o mesmo tanto de horas que passa sentado trabalhando, que é seu teclado. Pense que um programador gasta muito mais horas usando teclado e mouse do que usando um smartphone, mas a maioria das pessoas gasta mais tempo pesquisando sobre smartphones do que teclados, cadeiras ou colchão. E se além de programador, nas suas horas vagas você é gamer e vai virar noite no fim de semana jogando, então é bem mais que 8 horas por dia. E depois não entende porque tem 20 anos e já tem dor nas costas e tendinite.</p>
<p>Eu não sou especialista de ergonomia então falo só por mim, mas na prática, evitar dores no corpo tem mais a ver com ficar horas travado na mesma posição do que não estar numa &ldquo;postura correta&rdquo;. O segredo é de hora em hora pelo menos, mudar de posição, pra qualquer outra posição. Dar uma levantada de 2 minutos, dar uma esticada de 1 minuto, mas com alguma frequência. Se fizer isso, 90% dos problemas você já resolveu. Por exemplo, se ficou 1 hora sentado com a postura correta, muda de posição, pode sentar torto, sentado em cima da perna como muita gente faz. Mas depois de uma hora, muda de posição de novo. O importante é menos a posição e mais mexer seu corpo pra não deixar forçando sempre na mesma posição.</p>
<p>Vamos dar uma pausa no assunto de ergonomia e voltar a alguns conceitos básicos. Nos videos anteriores eu detalhei bastante sobre switches, keycaps, ponto de actuação e vários detalhes técnicos que na realidade tem mais a ver com a sensação da digitação e muito menos com ergonomia propriamente dita ou velocidade. Nenhum teclado mecânico vai fazer diferença nas suas dores, caso sofra de tendinite ou lesão de esforço repetitivo que é o LER. Nenhum teclado mecânico vai fazer você ser muito mais rápido. Usar um bom switch Cherry ou Gateron ou Kailh tem mais a ver, por exemplo, com a qualidade do couro do volante, mais do que se o carro vai andar mais rápido.</p>
<p>Na realidade, o que a maioria das pessoas sofre com teclados hoje em dia tem mais a ver com legado histórico e maus hábitos, que é o que quero explorar hoje. O layout de teclados que chamamos de 100% deriva do famoso IBM Model M. É o teclado original de 101 teclas, que divide as teclas em grandes grupos. As teclas alfanuméricas, o grupo do meio que são teclas de navegação como setinhas, page up e down. Daí temos o grupo mais importante pra quem usa Excel que é o teclado numérico. Um bom contador não consegue viver sem isso. E por último, lá em cima, temos a linha de teclas de função, de F1 até F12.</p>
<p>Quem não usou teclados antes dos anos 90 não vai lembrar disso, mas cada microcomputador e também os terminais de mainframes; cada um tinha um layout diferente. Por exemplo, olha como era o layout do teclado de um micro MSX. Eu lembro claramente como ele tinha um layout esquisito de setas. Ou veja como era o Apple II, que já era mais parecido com o que hoje chamamos de layouts 65%. E se quiser esquisito, veja como era o ZX Spectrum, com as famosas teclas chiclete, o exato oposto de ergonomia e curiosamente mais próximo do que chamamos hoje de layouts 40%. Mas isso era cruel.</p>
<p>A IBM veio pesquisando teclados por décadas e finalmente chegaram num layout que encapsula tudo que um operador ou programador precisaria e esse foi o layout do IBM Model M, que saiu com os primeiros IBM PC; a primeira tentativa da IBM de conquistar o mercado fora das corporações. E fez tanto sucesso que literalmente todo mundo passou a adotar esse mesmo layout desde então. Se você tem um teclado 100%, com o teclado numérico na direita, a única diferença é que depois do Windows 95 passaram a colocar a tecla super de Windows entre o &ldquo;alt&rdquo; e o espaço dos dois lados e com isso temos o layout clássico de 103 teclas.</p>
<p>Agora, esse teclado foi pensado numa época antes da adoção do mouse do lado direito. O IBM Model M descende de teclados de terminais de mainframe, como o lendário IBM Model F, que nem esse que eu comprei no eBay mas não funciona direito. Ou este outro que é um clone do Model F e vem como kit pra você se virar, mas até hoje ainda não consegui fazer funcionar. De qualquer forma, o Model F é um dos maiores tanques de guerra dos teclados já feito. O layout era diferente, e a construção é quase toda de metal. Ele pesa mais de 4 quilos e se você bater na cabeça de alguém com isso, é homicídio. É impossível agredir alguém com um teclado desses e não esperar que o outro vai morrer no ato. E por isso também esses teclados eram super caros, acho que na faixa de 2 mil dólares.</p>
<p>Os Model M passaram a ser feitos com materiais mais baratos, menos ferro, mais plástico, e mesmo assim ainda são mini tanques. Eu tenho um antigo que também comprei no eBay e com um adaptador de PS2 pra USB até que funciona direitinho. Mas se quiser experimentar uma versão moderna, a Unicomp herdou o maquinário original da IBM e Lexmark e fazem um modelo mais moderno USB mas ainda construído do mesmo jeito que antes. Vale pesquisar eles se tiver interesse em saber como eram teclados buckling spring originais. Depois que comprei esse eles fizeram uma versão tenkeyless que eu prefiro.</p>
<p>Os Model M são muito grandes e originalmente pensados pra serem o único periférico na frente do monitor. Mesmo quando começamos a adotar mouse, mais do meio pro fim dos anos 80, depois do lançamento do Lisa, depois do Macintosh, os Commodore Amiga, Atari ST até chegar no Windows 3.1, ainda teve uma transição até a gente passar realmente a depender de mouse pra tudo. Foi mais depois do Windows 95 que o povo não profissional se acostumou a usar mais mouse e menos teclado, depois do meio dos anos 90.</p>
<p>Pior ainda. Foi a partir principalmente do meio pro fim dos anos 90 que passamos a usar mais mouse pra games, especialmente depois de clássicos como Doom, Duke Nukem até culminar nos Quake III, Unreal Tournment e Half-Life. Agora os teclados cheios, 100%, já passam a realmente atrapalhar. Quando a gente joga, a maioria das teclas que se usa nos jogos fica acumulado do lado esquerdo. As teclas w a s d são usados como seta, usamos espaço pra pular. E a mão direita fica no mouse. Por isso que existem até teclados gamers que são só o lado esquerdo, porque daí olha quanto de espaço que ganhamos do lado direito pra mover o mouse.</p>
<p>Claro, não é exatamente muito prático ficar trocando de teclado toda vez que vai jogar, mesmo porque a gente fica em coisas como chat, ou dá uma pausa no jogo, dá alt-tab e vai no navegador procurar alguma coisa; agora a metade que não tem do teclado faz falta. Então eu não recomendo esses meio teclados a menos que tenha espaço pra ter os dois tipos conectados ao mesmo tempo. Pra maioria de nós que não somos gamers nem streamers profissionais, realmente mais atrapalha do que ajuda.</p>
<p>Mesmo sem contar games, atrapalha no dia a dia deixar o mouse lá longe na direita. Mesmo que você seja do tipo que não vê nenhum problema, saiba que quanto mais tá deixando o braço esticado pra direita, mais tá forçando seu ombro e pescoço. Na realidade, quanto mais horas se passa só usando mouse, mais força o braço como um todo e o ideal é evitar. Quem trabalha com coisas como Photoshop, editor de video, 3D ou qualquer coisa assim não tem tanto como evitar, a menos que já tenha migrado pra tablet com caneta, como as famosas Wacom. Ninguém que é obrigado a usar mouse o dia todo gosta muito disso, só se for masoquista e não se importa com dor. Todo o resto, ou tenta usar o teclado o máximo possível, ou migrou pra equipamentos especializados.</p>
<p>De novo, o foco é mais pra gente como eu que lida com programação ou similares. Galera das artes digitais vai discutir se é melhor comprar uma Wacom Cintiq ou um Huion Kamvas ou um XP-Pen da vida. Se seu foco for artes, recomendo o canal do Brad Colbow que faz reviews de equipamentos desse tipo pra desenhistas e ilustradores profissionais. Eu passei anos lidando com photoshop só no mouse, e sim, é brutal com o pulso, ombro e pescoço. Mesmo edição de video eu tenho shortcuts no teclado pra coisas como cortar e navegar pela timeline.</p>
<p>Se nunca tinha pensado nisso, o objetivo é pelo menos não esticar tanto o braço pra direita quando é obrigado a usar. E por isso o próximo passo de um teclado 100% são o que chamamos de TKL ou Tenkeyless, literalmente &ldquo;sem as 10 teclas&rdquo; ou o grupo de teclas numéricas. Eu já consigo ver um contador chorando assistindo o video, mas pra maioria de nós, esse bloco de teclas é literalmente inútil. É muito raro precisarmos digitar tantos números assim que faz diferença; por outro lado, toda vez que precisamos do mouse, esse bloco pouco usado tá no meio do caminho, então vamos arrancar fora.</p>
<p>Por alguma razão esse é o layout que até alguns anos atrás mais se associava a gamers. Marcas como Razer, Logitech, Asus e outros enfiaram um tanto de RGB neles e pronto: teclado gamer. Eu mostrei nos meus videos originais de teclados que eu tinha modelos como o Razer Blackwidow. E mesmo o pessoal que começou a adotar a idéia de teclados mecânicos em geral, adotou o layout tenkeyless. Ele é o meio do caminho mais fácil, porque a única modificação é tirar as teclas de números, que nenhum gamer usa, então tem zero curva de aprendizado pra mudar e automaticamente se ganha mais espaço pro mouse.</p>
<p>Se você quer o menor esforço pra mudar de teclado, caso estivesse usando os 100%, essa é a opção com zero dor de cabeça. Outra opção que se tornou muito popular por causa dos notebooks são variantes de layout 75%. Esses layouts tentam pegar o bloco do meio de teclas de navegação como home, end, page up, page down e setas e tentam enfiar no bloco principal alfanumérico. Esse é o layout que as setas ficam grudadas em teclas como shift e control do lado direito.</p>
<p>Se você tá acostumado com notebooks, tá acostumado com esse layout mais apertado. Nesse caso o objetivo foi menos dar espaço do lado direito e mais conseguir enfiar um teclado usável num notebook com telas menores que 15 polegadas. O problema de tentar usar um teclado cheio 100% num notebook é que você sempre vai ficar um pouco pra esquerda, em vez de estar centralizado com a tela. Alguns se acostumam, mas eu pessoalmente não gosto de não estar no centro da tela. É questão de gosto mas acho que o layout 75% é o mais correto e mais universal pra notebooks. De novo, a menos que seja um contador, aí vai querer as teclas numéricas também.</p>
<p>E quando eu falo contador, não estou menosprezando não, mas é um caso de uso muito pequeno pra estabelecer como padrão pra todo mundo e desperdiçar tanto espaço. Não só contador, mas qualquer um que lide por exemplo com data sciences, pesquisa e coisas que exigem digitar números com velocidade e precisão. Nesse caso não tem jeito, pega um teclado 100% mesmo e seja feliz. Mas pra todo o resto de nós, vamos continuar.</p>
<p>Um notebook tem uma vantagem em relação a desktops, a existência de trackpads embaixo do teclado. Essa é a melhor posição, porque pra maioria das atividades do dia a dia como posicionar o cursor num Word, ou só rapidamente clicar num link, dá pra fazer tudo só usando o dedão sem quase tirar a mão direita do teclado. Por muitos anos, quando usava Mac, eu preferia usar o teclado Magic Keyboard e o Magic Trackpad embaixo dele, que é parecido com o posicionamento num Macbook.</p>
<p>Nesse segmento que cresceu marcas como a Keychron com o seu famoso K2, que até canais renomados como o MKBHD do Marques Brownlee adotaram como teclado favorito. Inclusive pra muitos, migrar pro tal mundo de teclados mecãnicos significou ir pra um Keychron K2 ou clones similares, com layout 75%. É um layout minimalista que dá uma ótima opção pros road warriors, o pessoal que viaja muito e quer carregar um bom teclado na mochila. Pelo menos antes da pandemia.</p>
<p>E um Keychron sempre teve uma construção muito boa. Não é necessariamente o melhor, mas é o melhor conjunto. Os entusiastas poderiam ir pra opções de melhor construção como os kits Glorious GMMK. Eu pessoalmente testei vários Keychron já, do tenleyless K8 ao 75% K2 até o low profile K3, mas pra mim o melhor modelo deles é o Q1 que eu comprei ou o Q2 que saiu faz pouco tempo. Eles tem uma construção bem mais robusta, que compete com os modelos da Glorious e da Drop e lembra o peso de um IBM Model M, um teclado menos pra levar na mochila e mais pra deixar preso na mesa, porque com esse peso ele não vai se mexer.</p>
<p>Um layout que eu pelo menos não vi tanta adoção são os 65%. É basicamente o layout 75% parecido com de notebook mas sem a linha de teclas de função só. Ainda tem as setinhas na direita mas ele é mais curto verticalmente e nesse segmento acho que a marca que sempre mais se destacou foi a lendária Ducky. Eu não tenho uma, mas vejam por esta foto. A idéia acho que é porque a linha de teclas numéricas e a linha de teclas de função são as menos usadas no teclado, então vamos juntar as duas linhas em uma. Normalmente fica ativado a função numérica, mas combinando com uma tecla modificadora, ativamos a camada de funções de F1 a F12.</p>
<p>Mas já que tiramos teclas de função, porque não dar mais uns passos e tirar mais algumas teclas. Aí muitos vão começar a se lembrar que um nicho principalmente de programadores e gamers resolveram dar o próximo passo lógico e daí surgiram marcas reconhecidas nesse nichos a Anne Pro 2 ou esse meu Ultimate Hacking Keyboard. Até pouco tempo sempre achei esse passo desnecessário. Um 60% é igual um 65% menos as teclas de setas, page up, page down, home e end. Ou seja, é o teclado cheio sem o bloco numérico, sem o bloco de navegaçao no meio e sem a linha de teclas de função. E aqui também nasce a necessidade de começar a conseguir configurar o mapeamento das teclas pra conseguir ter o equivalente de setas e tudo mais usando combinações de teclas.</p>
<p>Mas pensa, não parece um saco precisar apertar tipo uma tecla como &ldquo;function&rdquo;, toda vez que precisa usar setinhas ou dar um page up? Esse é o ponto que separa a população normal dos entusiastas. A população em geral consegue ir, no máximo, até 65% e mesmo isso já parece um grande sacrifício. Agora, num 60%, pra ter setas, precisa apertar uma tecla de função e o w a s d ou i j k l, o tico e o teco não consegue lembrar dessas coisas, dá curto circuito, o cérebro primitivo é incapaz de se adaptar a isso. Pelamordeus.</p>
<p>E vocês acham que eles pararam aí? Não! precisa ter um nível que separa de verdade os primitivos homo sapiens e dá destaque ao homo ludens de verdade. E aí inventaram o layout 40%. E é o que vocês devem ter pensado mesmo, vamos arrancar mais teclas! É basicamente o 60% mas arrancando fora também a inútil linha de teclas de números, e arrancando e diminuindo as teclas da direita. Pra que diabos backspace e shift precisam ser tão largos? Minimiza, minimiza. E esse é o resultado, o teclado que faz qualquer um repensar a vida.</p>
<p>Falando sério, eu tentei um layout desses um tempo atrás. Tentei usar o Razer Huntsman Mini. E vou dizer que foi uma experiência horrorosa. Foi tão ruim que eu doei esse teclado pra um dos desenvolvedores da minha empresa. Na verdade, eu decidi me desfazer de vários dos teclados da minha coleção e no ano passado fiz um sorteio interno entre o pessoal da minha empresa. Eles levaram esse Huntsman, meu Matias Mini Quiet Pro, o low profile tenkeyless SK630 da Coolermaster, os meus dois Razer Blackwidow, o MassDrop Ctrl, da época anterior da empresa mudar de nome só pra Drop, e meu primeiro Keychron K2. Falei que usar um 40% quebra a gente&hellip;</p>
<p>Tô brincando, eu quis me desfazer porque realmente já tava com teclados demais, e na época chegou o Keychron Q1 que como eu falei, achei que fosse ser meu último teclado. Tinha muito pouca coisa que poderia melhorar num teclado com layout 65%, que era o máximo que tava disposto a ir. Mas no fim do ano passado eu comecei a repensar essa história de teclados por causa de um colaborador da minha empresa que curte muito teclados e me convenceu a tentar uma coisa diferente.</p>
<p>Antes de chegar nessa história, vou precisar voltar no tempo de novo. Agora que vocês entenderam o básico sobre o tamanho dos teclados, preciso explicar sobre o layout, a disposição das teclas propriamente dito. Acho que muitos já ouviram a história de porque usamos layouts baseados em qwerty. E chamamos de qwerty porque são as primeiras 5 teclas da esquerda. O motivo de porque letras que usamos muito como &ldquo;a&rdquo; ou &ldquo;p&rdquo; ficam um lá na esquerda pro dedo mindinho e lá na direita pro outro dedo mindinho. E tem a ver com isso aqui, a máquina de escrever original.</p>
<p>Quem nunca usou não vai saber, mas cada tecla empurra um braço embaixo dele que vai tanto levantar um tambor aqui dentro e empurrar o martelo da letra específica que apertou, pra bater na fita de tinta e carimbar no papel atrás. Quando falamos em teclados mecânicos, falamos em peso de actuação na faixa de 45 até 60 gramas. Mas nesse caso, estamos falando de no mímimo o dobro disso de força que cada dedo precisa fazer pra conseguir carimbar com força no papel. Não tem como digitar leve, senão a tinta nem mancha o papel.</p>
<p>O problema é que, depois de treinar muito, era possível digitar tão rápido que um martelo poderia acabar batendo no anterior, que não teve tempo pra voltar, e fazendo muito isso a gente trava a máquina e precisa manualmente desenroscar os martelos. Daí o povo teve uma idéia: seria difícil fazer os martelos voltar mais rápido, então era mais fácil fazer nossos dedos digitarem mais devagar. Então vamos colocar algumas das letras mais comuns pros dedos mais fracos. Não sei dizer se foi assim que pensaram, mas consigo imaginar a linha de raciocínio.</p>
<p>De qualquer forma, o layout que usamos hoje é derivado de uma época onde se digitava nesses troços pesados, complicados e mecânicos de verdade. Só que ninguém mais usa isso hoje em dia. Mesmo antes dos PCs se popularizarem a gente já tinha máquinas de escrever eletrônicos, que era como se fosse um teclado embutido numa impressora com um processador muito simples e poucos bytes de memória. Eu lembro que era meu sonho poder digitar numa máquina daquelas, que eu via na escola, porque era ordens de grandeza mais leves de digitar. E depois nasceu micros e PCs, e aí até essa máquina ficou pra trás.</p>
<p>O fato é que hoje em dia as teclas são super leves. Mesmo os dedos fracos como os mindinhos, não tem que fazer quase nenhuma força. O problema hoje é que pouca gente usa os mindinhos, mas já vou falar disso. Então, não demorou muito pra alguns pesquisadores e engenheiros pararem pra pensar, &ldquo;cara, porque usar um layout derivado da época de máquina de escrever? tem gente que já nasceu com computadores e sequer usou uma máquina de escrever na vida. vamos criar um layout mais inteligente.&rdquo;</p>
<p>E assim nasceu o DVORAK, por causa do nome do inventor August Dvorak e na verdade eu fantasiei um pouco aqui. O Dvorak foi inventado nos anos 1930 com o objetivo de criar um layout cientificamente comprovado que é superior ao qwerty em velocidade, menos erros e menos esforço do digitador. Foram milhares de testes com pessoas de verdade ao longo de muito tempo pra chegar na melhor combinação de teclas que fosse melhor pro digitador. Mas na prática, qwerty é a prova que a gente tem muito pouca paciência pra aprender coisas novas.</p>
<p>Eu disse que o qwerty foi inventado como forma de evitar sequências de letras que pudessem emperrar os martelos, mas mesmo nos anos 30 acho que já era possível construir máquinas que emperravam menos, mas uma vez que todo mundo aprendeu a usar qwerty, era pedir demais pra mudar pra um layout novo mesmo que fosse cientificamente, comprovadamente melhor. E o mais bizarro disso, eu tenho certeza que quase 70% de vocês assistindo nunca usaram uma máquina de escrever e mesmo assim não conseguem se ver aprendendo um layout diferente de qwerty.</p>
<p>Mesmo hoje em dia, com computadores, e sendo super fácil trocar de layouts, a grande maioria das pessoas sequer sabe digitar qwerty como ele foi originalmente pensado, com todos os dez dedos. Tenho quase certeza que a grande maioria aqui usa 3, talvez quatro dedos. Em particular na mão direita, talvez cate milho só com o indicador e dedo do meio. E até digitam razoavelmente rápido, mas eu garanto que se sua profissão exige digitar muito, como um escritor ou programador, você eventualmente vai ter problemas no seu pulso, no seu cotovelo e no seu ombro e pode ser a razão de porque tem dores musculares e de cabeça.</p>
<p>Num mundo ideal, a gente aprenderia Dvorak, mas pra isso acontecer, essa teria que ser a primeira opção, e não a segunda. É como a dificuldade que muitos adultos tem de aprender uma segunda língua. Depois de uma certa idade, você não quer mais ter o trabalho. É pura preguiça mesmo, não tem nenhuma outra explicação. O motivo de porque eu não tento dvorak é justamente isso também, preguiça. E Dvorak ainda tem alguns problemas de ter sido criado numa era antes dos computadores. Mas além de preguiça eu ainda tenho uma outra boa justificativa que vou explicar.</p>
<p>Mas digamos que você tente experimentar Dvorak. Nas primeiras horas vai rejeitar o layout e o motivo é simples. Quais são as teclas que você mais usa no dia a dia? Eu diria que é copy e paste, os famosos control + C e control + V. Eles ficam aqui embaixo no teclado, não muito longes da tecla control. Daí às vezes a gente quer cortar em vez de só copiar, daí fazemos control + x, que tá aqui do lado do c. E quando a gente erra, faz o que? Desfaz ou undo, com control + z, que tá aqui do lado do x. Essas 4 teclas aqui embaixo é sua vida.</p>
<p>E onde o Dvorak coloca o C? Lá em cima, perto da tecla 9. E o V pra colar? Fica lá embaixo na direita, na direita! E cadê a porra do X pra cortar? Vou dar 1 segundo, procura, conseguiu achar? Não né. Tá aqui embaixo, no meio, em cima do espaço. E se quiser fazer control Z pra desfazer alguma coisa? Antes era lá no canto esquerto, mas no Dvorak fica lá no canto direito. Ou seja, as 4 teclas mestras do nosso dia a dia tão todas espalhadas e só isso já é suficiente pra nos deixar em pânico completo e desistir dessa brincadeira. E isso porque não sei se notou, mas lembra de onde fica o q w e no qwerty? Olha o que tem no lugar: crase, vírgula e ponto, que normalmente ficam lá embaixo na direita.</p>
<p>O Dvorak não deu certo na época das máquinas de escrever e até hoje permanece sendo um layout de nicho, embora todo sistema operacional já venha com opção pra escolher Dvorak se quiser. Basta ir na configuração de teclado, adicionar um novo layout, e começar a treinar. Não precisa instalar nada extra. E mesmo assim, duvido que alguém aqui tente. E por isso inventaram outros layouts pra essa era de computadores.</p>
<p>Na realidade, depois de Dvorak surgiram dezenas de outros layouts, mas nenhum ficou mais famoso em anos recentes do que o Colemak de 2006. Um layout mais moderno e mais sensível, onde o autor Shai Coleman também fez pesquisas pra chegar num layout que fosse mais eficiente pra digitar, assim como o Dvorak, mas ao mesmo tempo não tão complicado de migrar do qwerty. E de fato, só de bater o olho, ele já não ofende tanto quanto o Dvorak. Pra começar as teclas de símbolos quase não muda nada de lugar. Vírgula, ponto, tudo no mesmo lugar.</p>
<p>Mais do que isso, copiar, cortar, colar, desfazer, as teclas Z X C V continuam também nos mesmos lugares lá embaixo. Teclas como Q W A também parecem nos mesmos lugares, mas daí o miolo muda. Qual o princípio? É a idéia de manter seus dedos o maior tempo possível no que chamamos de &ldquo;home row&rdquo; ou &ldquo;linha de casa&rdquo;, que é a linha do meio.</p>
<p>Olha só, num mundo ideal, seus dedos deveriam no máximo mover o menos possível, uma tecla pra cima, uma tecla pra baixo, mas ficar no meio o máximo possível. Quanto mais manter os dedos na linha do meio, menos esforço precisa fazer e menos erros vamos cometer. A maior parte dos erros vem de ter que tirar a mão dessa posição, por exemplo pra apertar o backspace pra apagar, que costuma ficar lá em cima na direita, ou quando você não usa o shift da direita pra fazer maiúsculas com as teclas da esquerda.</p>
<p>Eu mesmo ainda não tive paciência pra testar, mas Colemak pode ser uma boa alternativa pra quem quiser migrar de qwerty pra um layout que possivelmente vai te deixar mais rápido e ao mesmo tempo diminuir problemas de lesão por esforço repetitivo ou LER. Eu estou chutando, mas imagino que qualquer um que digite errado vai ter mais chances de ter lesões no futuro. Mesmo se não quiser mudar de layout, no mínimo tente treinar pra usar todos os 10 dedos no qwerty. Eu também chutaria que seja qwerty, ou dvorak ou colemak, pra maioria das pessoas, não vai fazer tanta diferença e agora vou explicar porque não é só por preguiça que não me animo de mudar pra um Colemak da vida.</p>
<p>Alguns anos depois, um cara que experimentou dvorak e colemak, justamente por causa de lesões por esforço repetitivo, ficou curioso com uma coisa que ele notou no Colemak. De fato, ele diz que notou que os dedos fazem menos movimentos pra linha de cima ou pra linha de baixo comparado com qwerty. Mas ele cismou que alguns dedos faziam mais movimentos laterais na linha do meio mesmo. E a razão disso foi a posição da letra H no colemak, que por acaso se manteve no mesmo lugar comparado ao qwerty.</p>
<p>Tanto dvorak quanto colemak existem na idéia de aumentar a eficiência ao tentar manter seus dedos na linha do meio o máximo possível, mas o Bucao, criador do layout Workman, acha que obcecar só nisso e ignorar o movimento natural diferente dos dedos das mãos não é eficiente. No site do workman ele tem uma enorme explicação muito bem embasada com toda a pesquisa que justifica o porque do layout dele. E aí que eu acho que pra nós, eu aqui e vocês assistindo, não faz tanta diferença a menos que seu dia a dia seja só escrever textos em inglês.</p>
<p>Em particular a cisma que ele teve com o H foi porque o E fica duas teclas pra direita na linha do meio no Colemak. E o segundo bigrama mais usado na língua inglesa é o HE, como em &ldquo;The&rdquo;. O primeiro bigrama é &ldquo;TH&rdquo;, claro, que aparece tanto em &ldquo;The&rdquo; como &ldquo;there&rdquo; ou &ldquo;this&rdquo;. Bigrama é um termo de linguística pra estudar línguas e se refere a pares consecutivos de letras que aparecem em palavras. Todo mundo que já lidou com indexação e pesquisa de palavras já esbarrou em termos como bigrams ou n-grams, na documentação de um Elasticsearch ou full text search de bancos de dados. Mas isso é assunto pra outro dia.</p>
<p>Otimizações desse tipo são totalmente dependentes da língua. Pensa, como que fazemos pra manter os dedos o máximo possível na linha do meio do teclado? Simples, pegamos todos os textos de livros e revistas indexados tipo no Google e fazemos uma análise estatística de bigrams, n-grams e tentamos colocar no meio as letras mais frequentes. E tentamos também colocar mais próximo as letras dos bigramas mais usados como o TH e HE que o Bucao mencionou. E vamos fazendo experimentações e medições pra ver se realmente ao digitar textos em inglês, no geral, os dedos tendem a se mexer o menos possível e fazer o menor número de repetições desconfortáveis que poderiam levar a lesões.</p>
<p>Mas de novo, toda essa pesquisa vale pra inglês. Mesmo entre inglês britânico e americano vai ter muitas diferenças. Se colocar nosso português na mistura, pior ainda, tem que refazer a pesquisa toda. Eu não pesquisei, mas nunca esbarrei num layout que foi pensado especificamente pra nossa língua. Certamente alguém deve ter tentado. Pior ainda, e pra gente que é programador que precisamos escrever em português e em inglês ao mesmo tempo? Não tem como fazer um layout que atenda todas as possibilidades de múltiplas línguas. E por isso eu não vejo muita vantagem migrar de qwerty pra outra coisa.</p>
<p>A grande vantagem do qwerty e o motivo de porque ninguém tem muita vontade de mudar é porque é universal. Pode não ser o melhor, mas podemos usar computador de casa, notebook do trabalho, computador na casa dos pais, amigos, em lojas, e sempre vamos achar o mesmo layout. Seja o melhor ou não, a vantagem é a universalidade. Por isso eu não vejo o qwerty morrendo tão cedo. Mesmo os layouts cientificamente comprovados como melhores como dvorak ou colemak permanecem num nicho muito pequeno de usuários.</p>
<p>Pra quem é programador e sequer digita textos muito longos nem em português, nem inglês, e sim coisas como &ldquo;function&rdquo;, &ldquo;class&rdquo;, &ldquo;const&rdquo;, &ldquo;let&rdquo; com mais frequência, os estudos todos que foram baseados em literatura, não bate com a realidade. Se você programa em javascript eu poderia chutar que o bigrama mais comum não vai ser &ldquo;TH&rdquo; com em &ldquo;The&rdquo; e sim talvez &ldquo;LE&rdquo; de &ldquo;let&rdquo; ou &ldquo;CO&rdquo; de const, e essas seriam candidatos de letras que deveriam estar na linha do meio. Mas como vimos, se tirar o &ldquo;C&rdquo; da linha de baixo, vai dar treta, porque mais que digitar código, programador moderno vai é fazer control + C e control + V com mais frequência do que qualquer outra coisa.</p>
<p>Eu pessoalmente não vejo vantagens em mudar de qwerty, mas se no seu dia a dia você digita mais textos em inglês o dia todo, talvez como pesquisador escrevendo papers ou gerente escrevendo relatórios, talvez um colemak ou workman sejam os mais indicados pra testar, se fizer muita questão de tentar. Mas esperem passar por pelo menos 2 semanas de muita frustração e ter que retreinar digitação do zero até conseguir chegar numa boa velocidade e com poucos erros. Na prática o problema da maioria das pessoas não é o layout e sim nunca ter treinado pra digitar nem o qwerty direito, com todos os dez dedos das mãos na posição correta. Já vou falar sobre isso.</p>
<p>Mas falando em relíquias da época da máquina de escrever tem de fato uma coisa que é difícil de defender. E foi isso que meu amigo aqui da empresa me recomendou e me convenceu a investigar mais. Olhem pra todos esses layouts, qwerty, dvorak, colemak, workman. Conseguem ver um troço estranho em todos eles? Ou melhor ainda, olha pro seu teclado na sua frente agora assistindo aí o video. Lembra quando eu falei agora pouco sobre o layout 60% de porque diabos teclas como backspace ou shift precisam ser tão largos? Sério agora, porque você acha que muitas teclas tem tamanhos diferentes?</p>
<p>Mas vamos um passo além, porque diabos todas as teclas precisam ser desalinhadas? Coloca sua mão na posição neutra na linha do meio. Indicador esquerdo em cima da tecla F, que costuma até ter um relevo pra você sentir que estacionou no lugar certo. E indicador direito em cima da tecla J que também tem esse relevo. Agora você vai digitar a tecla &ldquo;C&rdquo;, qual é o dedo certo? É descendo o indicador ou o dedo do meio? E a tecla &ldquo;Z&rdquo;? É o mindinho ou o anelar? Sério, consegue me dizer de cabeça sem tentar no seu teclado?</p>
<p>E todas as teclas da linha de cima e de baixo sofrem do mesmo problema. Muitas delas são ambíguas, e se você nunca teve treinamento formal de digitação, cada um vai ter uma resposta diferente porque ao longo dos anos acostumou a usar um dedo ou outro. Mesmo quem digita com todos os dez dedos vai ter dificuldades e esse é o motivo de porque você erra tanto e porque a tecla que mais usa é o backspace pra apagar e corrigir; porque se tenta ir muito rápido eventualmente seu dedo bate na borda de uma tecla e acaba apertando a outra do lado.</p>
<p>E por que diabos as teclas são todas desalinhadas? Já pararam pra se perguntar isso? Eu mesmo nunca tinha parado pra pensar nisso até que me fizeram essa mesma pergunta. E a resposta, pra mim que aprendeu a digitar numa máquina de escrever é super óbvia. Vamos voltar aqui pra minha máquina. Lembram que cada tecla tem um braço em L embaixo que liga com o tambor lá atrás? Concorda que seria muito complicado se as teclas fossem alinhadas verticalmente? Elas são desalinhadas pros braços das teclas da linha de baixo não cruzarem com os braços das teclas da linha de cima.</p>
<p>Deixa eu mostrar com calma que isso é importante, olha só como cada tecla fica exatamente entre duas de cima. Pras teclas serem alinhadas verticalmente, esses bracinhos de ferro embaixo precisaria cada uma ser dobrada de jeitos diferente pra desviar das outras. Eu imagino que até seja possível, mas aí na hora de fabricar, teria que ter um desenho de braço diferente pra cada linha de teclas. E esse é o único motivo de porque as teclas são todas desalinhadas. Não é por eficiência pra digitar nem nada, mas sim pela forma que máquinas de escrever eram construídas.</p>
<p>E de novo, ninguém mais usa máquinas de escrever. Mudar de layout eu realmente acho que o ganho não compensa a dor de cabeça pra reaprender, mas o desalinhamento realmente me atrapalha mesmo depois de digitar assim por 3 décadas. Eu sempre errei mais do que gostaria e sempre porque vira e mexe, quando começo a digitar muito rápido, acabo apertando duas teclas sem querer, e como sou obrigado a mover os dedos pra um alinhamento estranho na linha de cima e de baixo, pra voltar pra posição neutra no meio de novo, é mais devagar.</p>
<p>E foi isso que ano passado eu fui obrigado a parar pra pensar. Não existe nenhuma razão pra teclados modernos terem teclas desalinhadas a não ser legado histórico e costume. E depois que isso me ocorreu, não consigo mais despensar e fiquei com isso na cabeça me perturbando. Eu sou do tipo que quando uma coisa óbvia aparece, não consigo mais ignorar. E por isso encomendei dois teclados novos. E agora podemos continuar a história dos tamanhos de teclado também.</p>
<p>Lembram que brinquei que o homo sapiens vai parar no layout 65% porque a evolução só chega até esse ponto e só o homo ludens vai o caminho todo até os famigerados 40%? Pois é, conheçam o meu novo Planck EZ da ZFA, a mesma que muitos devem conhecer pelo famoso Ergodox. Se nunca tinha visto, isto é um 40%. Esse teclado é um pouco menor que um Nintendo Switch, e só um pouco mais grosso na lateral. Aliás, uma dica pra quem tem teclados desse tamanho. Ainda não existe um case oficial pra transportar o Planck na mochila mas um case de Switch serve direitinho. Eu tenho esse genérico da Insignia que comprei pra transportar meu Switch e olha só, cabe o Planck direitinho nele.</p>
<p>Mais do que 40%, esse teclado tem as teclas todas alinhadas verticalmente. É o que se chama de teclado ortolinear, teclados tradicionais chamamos de staggered, ou escalonado. Vamos falar disso primeiro e vamos colocar os dedos na posição neutra, indicador esquerdo no F e indicador direito no J, igual antes. Agora lembram da pergunta? Qual dedo que devemos usar pra apertar a tecla C? Indicador ou dedo do meio? E aqui está absolutamente óbvio que é o dedo do meio, só deslizar ele pra baixo uma tecla. E a tecla Z, é com o mindinho ou o anelar? E de novo é óbvio, só deslizar o mindinho e ele encosta no Z. Não tem dúvidas de qual dedo vai em onde.</p>
<p>Olha só, deslizamos verticalmente pra cima, deslizamos verticalmente pra baixo, os únicos dedos que tem mais de uma letra são os indicadores que continuam deslizando pras colunas do meio. Mas beleza, e se eu quiser digitar números? Onde eles foram parar? E aqui começa uma coisa que é específica deste teclado e pode variar em outros modelos. No caso do Planck, ele pode ser totalmente customizado via um software chamado Oryx. Vamos abrir online pra olhar, é uma aplicação web, nem precisa instalar.</p>
<p>Teclados 40% obrigatoriamente precisam ter camadas, ou layers como eles chamam. Essa camada que vocês conseguem ver chamamos de layer base. É onde ficam todas as letras normais e teclas de modificação como shift, control, alt e outros. No meu caso em particular eu modifiquei meu layout pro enter ficar do lado direito do espaço e pro backspace ficar no dedão do lado esquerdo. O motivo é simples. Quais são os dedos mais fortes das suas mãos? O dedão, e enquanto dedos fracos como o mindinho da esquerda precisa além de apertar as telas Q A e Z ainda precisa apertar o control, o shift, o esc e tudo mais. E o dedão? A única coisa que ele faz é apertar a barra de espaço. Com certeza esse dedão consegue fazer mais que isso.</p>
<p>Fazendo isso eu consigo colocar de volta a tecla de igual e mais lá no canto superior direito, que no layout padrão é onde fica o backspace e aí eu perderia essa tecla. Tecla de igual usamos bastante em programação. No layout padrão do Planck, temos duas teclas especiais de troca de layers. Voltando ao assunto de layers, o Planck tem 3 layers, o que ele chama de layer baixo, layer alto e layer de ajuste. No meu caso eu fiz a tecla de backspace trocar pro layer baixo quando deixa apertado.</p>
<p>Vamos a mais detalhes. A gente costuma pensar em uma tecla como só tendo uma função. Por exemplo, a tecla de backspace, apaga uma letra. Se deixamos apertado ele sai apagando mais letras pra esquerda. Mas só com essa descrição sabemos que a tecla tem pelo menos 2 comportamentos diferentes pra 2 estados diferentes, o estado de teclar e o estado de deixar apertado, ou held. Olha só no Oryx, de fato eu posso configurar cada estado como eu quiser. E além de só apertar e deixar apertado eu ainda tenho os estados de dar duplo clique rápido e o estado de apertar rápido uma vez e deixar apertado no segundo toque que é esse &ldquo;tapp and then held&rdquo;.</p>
<p>Ou seja, cada tecla pode ter até 4 comportamentos diferentes e foi assim que fiz meu backspace também ter o comportamento de mudar pro layer baixo, quando deixa apertado sem soltar. Justamente um dos maus hábitos que nós temos é errar e sair apagando com backspace apertado a linha toda em vez de usar combinações mais eficientes como control + backspace que apaga palavras inteiras de uma só vez. Enfim, voltando pro Oryx, veja como está meu layer baixo hoje.</p>
<p>Quando eu deixo apertado o backspace, meu teclado muda de cor, que foi como eu configurei no Oryx. Agora as teclas da linha do meio da esquerda são os acentos mais chatos de português como til e circunflexo. E na linha do meio da direita eu deixei o mesmo esquema de navegação de setinhas como é no editor Vim, com H pra esquerda, J pra baixo, K pra cima e L pra direita. Vários outros utilitários de Linux costumam navegar no estilo Vim e esse eu acho que é o jeito mais eficiente pra navegar por um texto.</p>
<p>Esse ponto vale explicar mais. Vamos lá, o grande motivo de porque a maioria das pessoas não tá disposta a experimentar layouts abaixo de 65% é porque perdemos as setas de navegação que ficam lá embaixo na direita; olha só neste teclado 65% por exemplo. Você tá digitando seu texto ou código aí decide que faltou digitar alguma coisa no parágrafo de cima, o que você faz? Tira a mão direita inteira do teclado e move lá pra baixo. Daí quando termina de navegar, agora precisa encontrar a posição neutra tudo de novo pra voltar a digitar.</p>
<p>Agora vamos ver como é no modo Vim. Mesma coisa, quero navegar algumas linhas pra cima pra acrescentar alguma coisa. Agora eu aperto o backspace e deixo apertado pra mudar pro layer de baixo, sem tirar as mãos da linha do meio eu navego e imediatamente volto a digitar sem tirar as mãos do meio do teclado. Essa é a grande vantagem da navegação Vim. E some a isso esse layout de 40% e literalmente os dedos não precisam se mover mais do que uma tecla pra cima ou uma tecla pra baixo.</p>
<p>Isso ajuda mesmo acentuação de português que é um saco. Pensa o til. Se você digitava errado como eu, a gente precisa tirar a mão esquerda toda da posição pra alcançar shift e til, ou apertar shift com mindinho da direita e til com mindinho da esquerda, puta combinação chata. No meu caso eu configurei pra ser no layer de baixo então só aperto backspace com o dedão pra ativar o layer e F que é onde configurei pra ser o til. Essa é uma combinação bem mais próxima e sem malabarismo, com dois dedos fortes, o dedão e o indicador. E no caso de acentos eu recomendo que se experimente diversas combinações pra achar o que mais se adequa pra você.</p>
<p>No meu caso, no layer de cima é onde estão coisas como as teclas de função de F1 a F12 aqui no bloco do lado esquerdo. Eu quase nunca uso essas teclas, mas tá lá se precisar. E no lado direito tem uma curiosidade que ainda não me acostumei. Em vez de tirar a mão do teclado e pegar o mouse, pra coisas pequenas como clicar num campo num formulário de um site pra dar foco, eu posso controlar o cursor do mouse via o teclado. Olha só. Eu ativo o layer de cima e com essas teclas de baixo na direita mexo o cursor e posso até clicar com equivalente do botão direito ou esquerdo do mouse. A idéia não é substituir o mouse, mas só evitar precisar dele pra coisas pequenas e rápidas.</p>
<p>Enfim, eu já reconfigurei esses layouts literalmente dúzias de vezes. Toda vez que vou digitar um texto novo percebo alguma coisa que quero mudar de lugar. Depende muito do tipo de coisa que mais digita. Lembra o que eu falei sobre layouts como colemak, workman e afins? Diferente de inglês, português usa muita acentuação, é um grande saco, e nenhum desses   layouts leva isso em consideração. Os acentos que a gente mais precisa ficam espalhados por todo o teclado. E com teclados como o Planck posso configurar onde Eu acho mais confortável.</p>
<p>Aliás, o Oryx não é o único software que existe. Cada fabricante costuma ter o seu, precisa pesquisar, mas em particular dê preferência pra teclados que aceitam firmwares QMK, que é um projeto de código aberto pra ser o cérebro de teclados customizáveis. O próprio software Oryx na realidade é o QMK com uma cara mais bonita que a ZFA fez pra ela. Uma das grandes vantagens é que toda essa configuração não fica só no seu computador. Deixa eu mostrar.</p>
<p>Toda vez que modifico alguma coisa, ele compila e me dá opção de baixar um arquivo binário. Daí eu abro esse aplicativo de Windows chamado Wally e seleciono o binário que acabei de baixar. Olhem como tem vários do planck porque eu tava brincando bastante com ele. Daí pede pra colocar o teclado num modo que aceite o upload desse binário, que é apertando um botãozinho com uma agulha. Demora alguns segundos, restarta o teclado e pronto, tá com a nova configuração. E toda vez que mudar qualquer coisa precisa fazer esse processo de novo.</p>
<p>A grande vantagem é que agora posso plugar esse teclado em qualquer outro computador e todas as minhas customizações vão funcionar igual, sem precisar instalar nada extra. Fica tudo na memória do teclado. Marcas grandes como Razer tem software 100% proprietário como o Synapse, que costuma dar mais prioridade em mudar o RGB do que realmente customizar o teclado e foi o motivo de porque eu disse que minha experiência com o Hunstman Mini foi horrorosa. Porque não podia mudar quase nenhuma tecla. E um teclado 40% que não deixa customizar tudo, não serve pra nada. Portanto fiquem espertos com compatibilidade com QMK, isso é o mais importante.</p>
<p>Agora, mesmo customizando tudo que quiser, mesmo assim você não vai conseguir sair digitando rápido no mesmo dia. De jeito nenhum. Mesmo se já é um bom digitador num teclado normal, se já consegue uma média de 80 palavras por minuto, tenha certeza que no dia 1 sua média vai cair pra 20 palavras por minuto ou menos. Ou seja, sua velocidade male male vai ser 25% do que era antes. E isso vai ser extremamente frustrante, porque 20 palavras por minuto é a velocidade de alguém catando milho. Velocidade de ficar olhando e procurando a tecla.</p>
<p>E não tem jeito, seu corpo se acostuma com tudo que você faz repetidas vezes, inclusive as coisas erradas. Por isso é tão difícil quebrar um mau hábito. E mesmo sendo ruim digitar com teclas desalinhadas, sua memória muscular tá acostumado a lidar com esse problema. Ele naturalmente digita errado, naturalmente seu dedinho vai pro backspace e você naturalmente fica nessa rotina de, digita errado, apaga, conserta, digita errado, apaga, conserta. Você faz sem pensar. Mas colocando um teclado 40% e ortolinear ainda por cima, a região consciente do seu cérebro certamente não tem como ignorar. Ele vai ter que voltar pro zero.</p>
<p>Voltar do zero significa abrir um notepad e começar a reacostumar dedo a dedo. Faz de conta que você tava acostumado a digitar a letra C com o indicador esquerdo. Então coloca as mãos na posição neutra e começa a digitar a tecla C com o dedo médio quinhentas vezes no notepad, até parecer que seu dedo médio acostumou que é Ele que vai no C. E vai fazendo isso letra a letra.</p>
<p>Quando terminar de se familiarizar com o teclado, agora precisa de treino intensivo e pra isso servem sites como o keybr.com. Lembrando que vai ser extremamente frustrante mas você precisa ignorar a frustração e prestar atenção. Qual dedo tá tendo mais dificuldade em qual letra? Seu mau hábito tá levando o dedo pra tecla errada? Então volta pro notepad e fica treinando só esse letra, até marretar no seu cérebro que é o outro dedo que tem que ir nessa tecla. Volta pro keybr, faz algumas rodadas de palavras com as letras que tá errando. Recalibra outro dedo errado no notepad, e vai fazendo isso, dedo a dedo. Seu dedo não pode mandar em você, precisa subjugar esses dedos rebeldes.</p>
<p>Lembra bigramas? Além de digitar as teclas com o dedo errado, tem diversas combinações que naturalmente digitamos mais rápido. Acho que isso varia de pessoa pra pessoa, mas por exemplo uma palavra como &ldquo;palavra&rdquo;, no meu caso o &ldquo;pala&rdquo; eu digito muito rápido, é o mindinho da direita, depois o mindinho da esquerda, daí o anelar da direita e de novo o mindinho da esquerda. Como alterna direita e esquerda, elas saem quase ao mesmo tempo. Se você digita com dedos errados, tá acostumado a combinações rápidas que agora vão sair devagar, e até reacostumar, vai ser a parte mais frustrante de reaprender, na minha opinião.</p>
<p>Imagino que foi intencional, mas por isso eu acho interessante não treinar no começo com palavras que tá acostumado. Olha como os testes de prática do Keybr são palavras nada a ver. Isso força seu cérebro a desistir da memória muscular, porque nenhuma palavra tem o ritmo que você espera, e aí precisa prestar mais atenção no que tá digitando em vez de confiar na memória. Esse é um bom jeito de começar a forçar a digitar da forma correta, tirando completamente da zona de conforto.</p>
<p>E quanto tempo precisa pra acostumar? De novo, isso não é científico porque é a experiência de uma única pessoa que sou eu mesmo. Se olhar no meu perfil no keybr, eu treinei um total de 4 horas, quase 500 testes de prática como esses que mostrei. Imagino que a maioria das pessoas não tem paciência pra ficar catando milho e se frustrando por mais que meia hora por dia, então chuto que vai levar mais de uma semana tentando, no mínimo, porque picado assim vai levar mais tempo no total. E não adianta, tem que ser um treino deliberado como falei, prestando atenção dedo a dedo e retreinando letra a letra. Não adianta querer sair digitando de qualquer jeito que aí sua memória muscular vai forçar os dedos errados nos lugares errados.</p>
<p>Eu sou meio retardado, e já tinha ouvido falar que podia levar 2 semanas ou mais de treino e eu tava com zero paciência pra esperar tanto. Então, essas 4 horas foram ao longo de 2 dias num fim de semana. E na realidade foi mais de 4 horas. Depois das primeiras horas no keybr decidi tentar palavras de verdade em outro site, no Monkeytype. E lá gastei mais 2 horas de treino e uns 300 exercícios. No total foram pelo menos umas 3 horas num sábado e mais 3 horas no domingo, total de quase 800 exercícios. Na verdade acho que foi mais porque eu só fiz conta no keybr bem depois que comecei a treinar.</p>
<p>Nas primeiras horas eu tava catando milho, no máximo 20 palavras por minuto. Mas é incrível o que treino deliberado prestando atenção no tempo, na métrica e disciplinadamente indo dedo a dedo fazem. No final dessas 6 horas já tinha voltado pra minha média de 80 palavras por minuto, e forçando um pouco mais já tava conseguindo ficar no range entre 90 e 100 palavras por minuto que era minha velocidade em teclados normais antes. Hoje em dia facilmente atinjo 90 palavras por minuto se estiver focado. Então a boa notícia é que se você for do tipo dedicado e focado, dá pra acostumar no layout ortolinear de boa em um único fim de semana, sem nem precisar se matar tanto assim.</p>
<p>Considere o seguinte, eu digito no estilo qwerty com teclas desalinhadas faz mais de 30 anos, e tinha alguns poucos maus hábitos de dedos em teclas erradas. 6 horas intensivas num fim de semana foi o suficiente pra corrigir meus maus hábitos e acostumar num alinhamento novo, o suficiente pra segunda-feira estar respondendo emails, conversando com o pessoal da empresa no chat e ninguém notando diferença na minha velocidade. Lembra meu episódio de a Dor de Aprender? Foi tipo isso.</p>
<p>Eu diria o seguinte. Os melhores digitadores conseguem fazer acima de 150 palavras por minuto se estiverem completamente focados. É muito difícil conseguir isso. O meu máximo, com 30 anos de digitação nas costas, é 100 palavras por minuto, mas isso se estou num site como monkeytype ou keybr: em condições perfeitas, foco completo, sem acentuação, sem pontuação, sem palavras em maiúsculo, ou seja, condições de laboratório.</p>
<p>Aliás, eu facilmente chego acima de 90 palavras por minuto se forem palavras em português. Uma coisa legal do Monkeytype é que dá pra escolher dicionários em várias línguas. No caso de inglês dá pra escolher dicionário de palavras fáceis e ir escolhendo de palavras bem mais complicadas pra dificultar o treino. Em inglês minha média cai pra casa dos 70 a 80 palavras por minuto. Por alguma razão eu digito bem mais rápido em português sem acentos. E um chute que eu tenho é que em inglês eu noto que uso mais igualmente as duas mâos, mas em português parece que eu uso bem menos a mão esquerda. Minha mão direita é um pouco mais devagar, daí em inglês vou mais lento que português. A velocidade não é a mesma em qualquer língua.</p>
<p>No dia a dia, eu devo estar muito mais próximo da média de 60 palavras por minuto. Até menos. Isso porque quando digito um texto, eu páro pra pensar, mudo de idéia, reescrevo de um jeito mais bonito ou menos agressivo. Ninguém fica digitando 100 palavras por minuto o tempo todo, só em ambiente controlado. Então eu diria que mais que digitar rápido, é mais importante digitar corretamente, cometendo menos erros. Erros é o que atrapalha seu raciocínio, porque quebra sua concentração ter que ficar dando um monte de backspace toda hora.</p>
<p>E falando em digitar muito rápido, um tanto de gente ficou me mandando um video que eu já tinha visto também no TikTok de um teclado diferente onde o cara consegue digitar 200 ou 300 palavras por minuto. É o Charachorder. Parecem duas bolas com botões pendurados. Vou resumir pra vocês: primeiro, esse teclado não presta pra gente. Segundo, essa idéia não é nenhuma novidade. Existe faz décadas.</p>
<p>Só existe uma profissão onde digitar extremamente rápido e sem erros é fundamental. Se você for um estenógrafo. Sabe séries de TV que tem julgamentos, tipo Suits da vida? Sempre tem aquela pessoa quieta que fica transcrevendo tudo que todo mundo fala no julgamento. Já pararam pra pensar como fazem isso? Pra conseguir transcrever uma pessoa falando em tempo real de fato você precisa ter velocidade consistente acima de 150 palavras por minuto, durante todas as horas que pode durar um julgamento. Digitar 100 já exige todo meu foco, imagina 150 ou 200 palavras por minuto durante um dia inteiro de 8 horas.</p>
<p>Num teclado normal isso é impossível. Com todos os defeitos legados que herdamos da máquina de escrever, não tem como. Nem se eu treinar muito no meu ortolinear, também é impossível. Eu preciso juntar meu teclado com um software que pensa junto comigo. É uma combinação de macros e autocomplete, que nem o teclado do seu smartphone faz sugerindo palavras antes de terminar de digitar. Palavras super longas eu abrevio pra uma combinação de poucas letras num macro, que nem snippets de código num VSCode. Os teclados especializados de estenografia oficiais custam super caros, até 6 mil dólares. Isso porque eles são essencialmente computadores com dicionários caros.</p>
<p>Esse cara do CharaChorder acho que vende o teclado diferentão e também tem opção só do software pra usar com um teclado normal. Ele usa características de teclados modernos como n-key rollover, que já expliquei no outro video que é digitar várias teclas de uma só vez e o sistema conseguir registrar todas elas. Ele faz isso. É semelhante à função de swipe de teclado virtual que a gente só desliza o dedo em cima das teclas e ele adivinha que palavra que a gente queria digitar.</p>
<p>Se quiser estudar mais sobre como se faz isso, hoje em dia tem machine learning envolvido porque é um processo estatístico que aprende baseado em frequência de palavras e n-grams. Mas precisa entender o que são cadeias de Markov e processo estocástico. Lembra quando povo fala que aprender matemática é opcional? Pois é, sem entender cadeias de markov, você nunca vai conseguir fazer coisas como um teclado virtual.</p>
<p>Mas esquece esse cara do CharaChorder. Nada do que ele tá vendendo é novidade. Você também não precisa gastar milhares de dólares e fazer curso oficial de estenografia. Teclado de estenografia tem só duas linhas principais de teclas em vez de três. Dá pra ou comprar um kit barato ou configurar seu teclado normal. Existe um projeto de código aberto chamado Open Steno que tem os softwares, documentação que ensina como usar, e uma comunidade de entusiastas que querem aprender a digitar tão rápido quanto um estenógrafo de verdade. Existe todo um campo de pesquisa e engenharia em cima disso. Isso existe faz décadas.</p>
<p>E de novo, esses sistemas funcionam bem quando tá tudo configurado de um jeito bem diferente do que seu teclado se comporta. Um estenógrafo que transcreve casos nos Estados Unidos tem configurado um bom dicionário em inglês. Se precisasse transcrever um brasileiro falando, ele ia ter problemas. Precisa de um dicionário em português, reconfigurar todos os macros, e retreinar tudo pra uma língua nova. Agora imagina programação, que todo código tem um monte de palavras que simplesmente não existem num dicionário, com um monte de parênteses, chaves e coisas que não se usa num texto normal. Daí esse tipo de teclado vai mais atrapalhar do que ajudar. Por isso eu falei, pra gente é meio inútil. Só serve se você quiser ser um estenógrafo ou se exibir em video no TikTok.</p>
<p>Digitar rápido não é o objetivo. Ninguém vai ganhar nada digitando 300 palavras por minuto. Você nem tem tudo isso de palavras prontas na cabeça pra digitar um texto ou código que faça sentido. Porra, a maioria das pessoas consegue digitar merda em 200 letras num tweet. Magina escrevendo 300 palavras por minuto o tanto de lixo sem sentido que vai sair. Foque em escrever correto e não em escrever rápido. O objetivo é não forçar seus nervos e evitar dores desnecessárias.</p>
<p>O Planck EZ não é o único nesse formato. Tem outros como o OLKB Planck da Drop, que antes era Massdrop. É exatamente o mesmo layout. No momento que eu tava escrevendo o episódio eles tavam sem estoque. Mas tem outros fabricantes menores e entusiastas que fazem kits de teclados nesse e outros formatos mais exóticos, vale dar uma pesquisada. Não são baratos. Pode esperar gastar 200 dólares, sem contar frete e impostos.</p>
<p>Mas o título do episódio é pra falar do melhor teclado do mundo, e esse ainda não é o Planck. Da mesma empresa ZFA já tinha um que muita gente elogiou que é o Ergodox e depois dele, a ZFA pegou os feedbacks e fizeram um melhor ainda, que é o Moonlander MK1. E se prestou atenção em tudo que expliquei agora, falta só voltar pra um ponto que falei lá no começo do video: melhorar a ergonomia.</p>
<p>O Planck é muito bom pra quem precisa carregar o teclado na mochila. Literalmente cabendo num case de Switch, sabemos que é super portátil. Mas se você trabalha remoto, e só precisa de um teclado, dá pra optar por um melhor. E esse é o Moonlander. A principal diferença é ele ser dividido no meio. Ele até foi feito pra ser razoavelmente portátil, embora eu não ache que esse é o objetivo. Vamos recapitular sobre postura.</p>
<p>Você quer sempre colocar o menor stress possível no seu ombro e nos seus braços, por isso tente sentar de tal maneira que seus ombros não fiquem assim tensionados pra cima. Eles tem que estar naturalmente pra baixo. Altura errada de mesa e cadeira que prejudicam isso. Além disso vocês já devem ter ouvido falar que quando usamos um teclado normal, rotacionamos, ou pronamos os braços de tal forma que arriscamos estar beliscando os nervos quando as mãos estão retas na horizontal. A posição natural seria o mais vertical possível.</p>
<p>É isso que muitos teclados ergonômicos fazem, sendo mais altos no meio, a tal forma de tenda, pra aliviar essa pronação forçada. Todo mundo que já usou um teclado ergonômico da Microsoft ou Logitech já viu formatos assim. Além disso, outra coisa que pode forçar seus ombros e pescoço é trazer as duas mãos pra junto, em vez disso seria mais natural estarem separadas. E são esses problemas que um teclado split, cortado no meio, tenta ajudar a resolver. Olha como eu deixo esse Moonlander na minha mesa. Sim, agora minhas mãos ficam quase meio metro separadas uma das outras. E sim, digitar corretamente é pré-requisito, porque se um dos seus maus hábitos é digitar alguma tecla do lado esquerdo com sua mão direita, agora não tem como.</p>
<p>Diferente do Planck, o Moonlander não é minimalista. Ele tem mais ou menos o equivalente a um teclado 60%. Não tem as teclas de função lá em cima e nem as teclas de setas. Por outro lado adiciona várias teclas auxiliares ao redor que podemos customizar como quisermos no mesmo software Oryx que mostrei antes. Em particular tem esses thumb clusters, ou grupos de teclas por dedões. Lembra quando falei que nossos dedões podiam ter mais trabalho? Pois é, agora podemos dar trabalho pra ele, se quiser cada dedão tem quatro teclas dedicadas de cada lado.</p>
<p>Igual no caso do Planck, eu ainda fico modificando o layout pra achar alguma combinação de teclas que acho mais confortável. E ele também tem diversas camadas que podemos configurar. No caso do Moonlander, posso criar quantas camadas quiser. Isso é útil se por exemplo eu uso Photoshop, DaVinci Resolve, Blender e quiser fazer camadas especiais pra cada programa. E assim como no caso do Planck, eu deixo coisas como enter e backspace nos dedões.</p>
<p>Diferente do Planck, que é ortolinear, ou seja, é alinhado tanto na horizontal quanto na vertical simetricamente, o Moonlander é colunar. A diferença é ser alinhado na vertical, mas não na horizontal e isso é a última forma de quebrar o legado das máquinas de escrever. Não só nunca fez sentido desalinhar as teclas na vertical, mas também não existe motivo nenhum pra serem alinhadas na horizontal. Pára e pensa, olha pras suas mãos. Seus dedos tem o mesmo comprimento? Então porque as teclas ficam alinhadas na horizontal?</p>
<p>Alinhamento na horizontal significa que seu indicador e principalmente dedo médio ficam o dia todo muito dobrados, e também significa que seus mindinhos precisam esticar pra alcançar os cantos. Se você tiver mãos grandes, seus dedos vão dobrar mais. Se tiver mãos pequenas, seus mindinhos não alcançam os cantos. Em ambos os casos vai estar fazendo esforço extra desnecessário. Mas e se simplesmente alinharmos as colunas de teclas de acordo com o comprimento dos dedos?</p>
<p>Eu entendi ortolinear e me convenci da teoria, mas vou dizer que estava um pouco cético do desalinhamento horizontal do colunar. Mas posso dizer que funcionou super bem. O único porém é que não é muito trivial saber como de fato usar esse alinhamento. Eu mesmo pensei que as duas metades deveriam ficar paralelas com meu braço, mas não, o certo é elas estarem levemente rotacionadas e abertas. Eu vi isso em outro canal que recomendo de teclados do Ben Vallack que vou deixar na descrição abaixo.</p>
<p>Em resumo, se deixar da forma paralela, mesmo as colunas levando em consideração o comprimento dos dedos, ainda assim o indicador tem espaço sobrando e os mindinhos precisam esticar demais. Mas inclinando dessa outra forma, olha como fica mais fácil pros mindinhos trabalharem. E essa é a melhor forma de digitar com o Moonlander. O trabalho é mais decidir quais configurações colocar em quais camadas e como ativar cada camada do jeito mais fácil e isso vai depender só do seu treinamento. Minha configuração serve só pra mim. Tem até algumas combinações como control + shift + colchete que precisa pra editar no DaVinci Resolve, e agora fica fácil porque posso juntar tudo numa tecla só e facilita horrores pra editar.</p>
<p>Essa idéia de considerar o comprimento dos dedos não é nova. Eu já tinha visto outras opções como o Kinesis Advantage 2. Ele também é ortolinear, mas em vez de desalinhar horizontalmente, ele foi além e colocou as teclas todas numa cuba, como dá pra ver nessa imagem, porque é até difícil de descrever em palavras. E agora que aprendi a digitar com ortolinear, consigo entender porque esse teclado funciona bem. Talvez um dia experimente, mas tem uma coisa que não gosto dele, o fato de ser gigantesco e de não poder colocar as duas metades separadas como quiser. Mas eu sei que tem projetos pra impressora 3D e kits inspirados nesse formato que tentam melhorar esses pontos, vale pesquisar.</p>
<p>Se você leva a sério a história de ergonomia, tanto o Moonlander quanto o Advantage 2 cumprem mais ou menos as mesmas coisas que expliquei em termos de evitar pronar o braço e dar menos stress nos ombros, mas em termos de estética ainda prefiro mil vezes o Moonlander. Mais ainda porque se você realmente quiser levar pras últimas consequências, embaixo de cada metade do Moonlander tem um encaixe pra um acessório que faz ele ter o mesmo encaixe padrão do parafuso que tem em tripé de câmera fotográfica. E a ZFA tem um acessório que encaixa nele e você pode fazer um adaptador pra colocar no braço da sua cadeira.</p>
<p>Sim, o teclado sequer precisa ficar na mesa. Dá pra encaixar cada metade em cada braço da cadeira pra posição mais bizarra de todos os tempos e vou dizer que agora que aprendi a digitar corretamente em cada metade, essa idéia até que me atrai. Sem contar que daria pra colocar num tripé de cada lado pra poder digitar de pé em mesas que levantam em altura. Tem muitas possibilidades.</p>
<p>E falando em possibilidades e no canal do Ben Vallack, como último assunto não podia deixar de falar de uma versão de teclado que estou querendo testar. Pois bem, os homo ludens chegaram no layout 40%, mas essa ainda não é a última forma. Lembrem, o objetivo é evitar ao máximo tirar os dedos da linha do meio e no máximo mover uma tecla pra cima ou pra baixo, mas ainda tem muita tecla no Moonlander.</p>
<p>Graças às novas funcionalidaes de firmwares de código aberto como o QMK e de aumentar a densidade de funções que uma única tecla pode ter, chegamos no ponto que podemos remover ainda mais teclas. E o Ben e diversos outros entusiastas falam agora no layout de meras 34 teclas. Seria um layout 33%, que é o menor que podemos chegar. Dá pra colocar tudo em camadas e combinações de teclas. Recomendo dar uma olhada na série de videos onde ele faz experimentações com diversas configurações até chegar nesse modelo. É fascinante ver qual é o limite dos teclados. O Ben começou tirando teclas do Moonlander e configurando no Oryx pra não usar essas teclas e foi testando pra ver até onde dava pra ir. E disso projetou um teclado próprio de só 34 teclas que ele vai mostrando no canal.</p>
<p>E quem quiser uma versão um pouco mais extrema que o Moonlander e um pouco menos extrema que o do Ben, tem esse GergoPlex, que é até barato por 45 dólares. Bem mais acessível que os 200 do Planck ou os mais de 360 dólares do Moonlander. E além dele tem diversos outros kits. Hoje em dia povo projeta e faz impressão 3D e até os PCBs que são as placas lógicas dá pra fazer o projeto e só mandar imprimir em serviços como no JLCPCB.com. É o sonho de todo engenheiro elétrico. A comunidade de teclados abaixo de 40% tá mandando ver em opções acessíveis e com firmwares de código aberto como o QMK, só tende a aumentar as opções.</p>
<p>E realmente é prático? Dá pra aprender a usar um Planck ou Moonlander e digitar coisas de verdade? Bom, este episódio foi digitado metade no Moonlander e metade no Planck. A parte chata é que algumas combinações de teclas são diferentes nos dois e leva alguns minutos pra eu lembrar qual era qual. Mas agora digito melhor e com menos erros e na mesma velocidade de antes. Lembra o último episódio do tutorial de WSL2 que falei que deu umas 40 páginas de Word? Também inteiro escrito com o Moonlander. E na realidade os últimos 4 episódios foram escritos totalmente com o Moonlander. Eu gostei tanto que já comprei mais um pra colocar no escritório o dia que voltarmos da pandemia.</p>
<p>E agora sim, eu acho que finalmente falei tudo que queria falar sobre teclados. Acabou se tornando um hobby experimentar tudo que sai de novo e essa comunidade de entusiastas tá o tempo todo procurando maneiras mais eficientes de digitar. Só nesse canal, que tem mais de 100 episódios, se der uma média de 20 páginas por episódio, já soma mais de 2 mil páginas. Quase 2 livros do Cormem de algoritmos ou quase os 3 primeiros volumes de livros do Knuth. Mas lembrem-se que a escolha de qual teclado e qual layout usar depende dos seus objetivos pessoais. Se você não sente que precisa mudar nada, não tem nenhum problema. Nenhum teclado vai fazer você fica magicamente melhor. Se ficaram com dúvidas, mandem nos comentários abaixo. Se curtiram o video deixem um joinha, assinem o canal e compartilhem o video com seus amigos. A gente se vê na próxima, até mais.</p>
]]></content:encoded><category>teclados</category><category>hardware</category><category>produtividade</category><category>akitando</category></item><item><title>[Akitando] #11 - Projetos: Aprendendo a Priorizar</title><link>https://akitaonrails.github.io/2018/09/18/akitando-11-projetos-aprendendo-a-priorizar/</link><guid isPermaLink="true">https://akitaonrails.github.io/2018/09/18/akitando-11-projetos-aprendendo-a-priorizar/</guid><pubDate>Tue, 18 Sep 2018 17:00:00 -0300</pubDate><description>&lt;p&gt;Disclaimer: esta série de posts são transcripts diretos dos scripts usados em cada video do canal &lt;a href="https://www.youtube.com/channel/UCib793mnUOhWymCh2VJKplQ"target="_blank" rel="noopener"&gt;Akitando&lt;/a&gt;. O texto tem erros de português mas é porque estou apenas publicando exatamente como foi usado pra gravar o video, perdoem os errinhos.&lt;/p&gt;
&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/akKRtjIqRjs"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;h3&gt;Descrição no YouTube&lt;span class="hx:absolute hx:-mt-20" id="descrição-no-youtube"&gt;&lt;/span&gt;
&lt;a href="#descri%c3%a7%c3%a3o-no-youtube" class="subheading-anchor" aria-label="Permalink for this section"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Esse é um assunto que todo mundo bate cabeça, mas o básico não é tão complicado quanto parece. Em vez de complicar as coisas sem necessidade, entenda a linha geral primeiro. Esqueça processos e metodologias se ainda não entendeu a primeira coisa mais importante em qualquer projeto: priorizar as coisas!&lt;/p&gt;</description><content:encoded><![CDATA[<p>Disclaimer: esta série de posts são transcripts diretos dos scripts usados em cada video do canal <a href="https://www.youtube.com/channel/UCib793mnUOhWymCh2VJKplQ"target="_blank" rel="noopener">Akitando</a>. O texto tem erros de português mas é porque estou apenas publicando exatamente como foi usado pra gravar o video, perdoem os errinhos.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/akKRtjIqRjs"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<h3>Descrição no YouTube<span class="hx:absolute hx:-mt-20" id="descrição-no-youtube"></span>
    <a href="#descri%c3%a7%c3%a3o-no-youtube" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Esse é um assunto que todo mundo bate cabeça, mas o básico não é tão complicado quanto parece. Em vez de complicar as coisas sem necessidade, entenda a linha geral primeiro. Esqueça processos e metodologias se ainda não entendeu a primeira coisa mais importante em qualquer projeto: priorizar as coisas!</p>
<p>Links:</p>
<ul>
<li>AkitaOnRails: [Off-Topic] Lendo os Princípios Ágeis (<a href="http://www.akitaonrails.com/2010/01/30/off-topic-lendo-os-principios-ageis"target="_blank" rel="noopener">http://www.akitaonrails.com/2010/01/30/off-topic-lendo-os-principios-ageis</a>)</li>
<li>AkitaOnRails: Estimates are Promises - A Better Metaphor (<a href="http://www.akitaonrails.com/2017/06/26/estimativas-sao-promessas-uma-metafora-melhor"target="_blank" rel="noopener">http://www.akitaonrails.com/2017/06/26/estimativas-sao-promessas-uma-metafora-melhor</a>)</li>
</ul>
<h2>Script<span class="hx:absolute hx:-mt-20" id="script"></span>
    <a href="#script" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Olá pessoal, Fabio Akita</p>
<p>HOJE quero tocar no assunto sobre projetos. Em particular sobre a importância de entender o que significa priorizar as coisas e o processo de gerenciar um projeto Não tem nada tão complexo que requer uma pós-graduação no assunto. Qualquer um pode entender os conceitos básicos e como um conceito naturalmente leva ao próximo.</p>
<p>Em outros episódios vou entrar em mais detalhes sobre cada um desse conceitos, mas hoje quero só mostrar a linha de raciocínio geral que você podem levar para qualquer projeto, pequeno ou grande, basta expandir as premissas que vou mostrar hoje.</p>
<p>&hellip;</p>
<p>Um dos problemas mais frequentes que eu vejo é a surpreendente capacidade das pessoas de fugir da priorização. Parece medo de priorizar. E não é difícil de entender porque.</p>
<p>O modo mais normal das pessoas é: &ldquo;vou fazendo, uma hora dá certo&rdquo;. Ou pior: &ldquo;eu não escolho o que fazer, alguém escolhe por mim, e eu só vou fazendo&rdquo;.</p>
<p>A molecada é muito ligeira pra postar no Twitter como a gerência do projeto ou da empresa é ruim. Mas eu pergunto: quantos desses já assumiram de fato o bastão da responsabilidade pra criticar com tanta confiança? É muito fácil se esconder na anonimidade da internet. Difícil é executar e mostrar resultado. Nunca ouça ninguém que não tem resultados mensuráveis pra mostrar.</p>
<p>Você não precisa ser um MBA ou um &ldquo;Certified Scrum Master&rdquo; &hellip; pra entender esses conceitos, porque eles são meio triviais na verdade.</p>
<p>Primeiro entenda uma verdade absoluta: você não tem tempo infinito. Sua vida não é infinita, uma coisa que temos em comum é que um dia vamos morrer. Se fôssemos imortais, priorizar seria irrelevante já que poderíamos realmente fazer o que quiser, quando quiser.</p>
<p>No mundo real, tudo é finito. Tempo é a primeira coisa finita. Segundo são recursos, dinheiro, pessoas, materiais. É finito, é restrito e normalmente é pouco. Sua expectativa é investir 1 unidade de recurso pra no futuro conseguir recuperar 2 ou 3. Sim, retorno. Senão você estaria simplesmente jogando recursos fora. Por exemplo, eu costumo dizer que o objetivo de qualquer Product Owner é a responsabilidade sobre o retorno do investimento. Na verdade, eu diria que o objetivo de qualquer profissional é o retorno de investimento sobre seu trabalho, senão pra que você trabalha?</p>
<p>Sendo tempo e dinheiro coisas finitas, você precisa Escolher o que fazer. A primeira coisa a precisa fazer é planejar, enxergar o começo e o fim. Essa é a definição de um projeto. Você tem uma lista de coisas pra fazer, mas provavelmente não dá pra fazer tudo.</p>
<p>Quem me conhece sabe que eu tenho um certo desdém por material de auto-ajuda. Porém sou obrigado a aceitar que analogias e metáforas ajudam a visualizar um conceito abstrato.</p>
<p>Eu vi um vídeo anos atrás, acho que foi de Stephen Covey, autor do famoso Os 7 Hábitos das pessoas altamente eficazes. Ele ensinava o conceito e a importância de priorizar. Eu nunca mais achei esse vídeo online, então quero recriar minha própria versão aqui.</p>
<p>Priorizar funciona assim: você costuma ter tarefas pequenas e tarefas grandes. Tarefas mais fáceis e tarefas mais complicadas. Se você não tem experiência, o normal é a inércia tomar conta e você começar a fazer as tarefas menores ou mais fáceis.</p>
<p>Só quando já é tarde demais se lembra que tinha as tarefas mais importantes que ficaram pra trás. Você percebe que desperdiçou seu tempo fazendo o que não era importante e agora não tem mais tempo. É assim que projetos atrasam: um dia de cada vez, deixando a priorização pra amanhã.</p>
<p>O que o povo aprende a fazer com o tempo? A olhar o big picture: quais são TODAS as tarefas? Quais são as MAIS importantes? Vamos fazer as mais importantes PRIMEIRO e ir encaixando as menos importantes no meio.</p>
<p>Iteração, iteração. E no final, a mesma quantidade de tarefas pode até mesmo CABER no mesmo TEMPO que antes não caberia.</p>
<p>Priorizar é avaliar. É tomar uma decisão e se comprometer. É errar, assumir o erro, reajustar e seguir em frente. É colaborar com os colegas, criar relacionamentos de confiança. Nosso povo sabe que pode confiar um no outro, sabe quem pode procurar pra qual tipo de problema, não existe perda de tempo e desperdício onde a gerência cria silos de influência e um grupo começa a sabotar outro grupo. Nosso povo funciona tão bem que eu posso quase que aleatoriamente ir formando equipes entre eles e eles sabem o que fazer.</p>
<p>Eu aprendi que todo projeto funciona como um gás: ele vai ocupar todo o espaço que você der pra ele. Se você der um ano, o projeto vai durar um ano e mais um pouco. O mesmo projeto se você der 6 meses, vai durar 6 meses e um pouco. A coisa mais importante em um projeto é delimitar os tetos: o custo e o tempo.</p>
<p>E como você sabe que vai durar isso? Você NÃO sabe. Não é uma previsão. Já notou que existem 2 palavras: estimar e prever? Pára de tentar prever. Estime. E estimar não é exato, pela definição da palavra. Estimar é chutar uma ordem de grandeza. Ordens de grandeza não é dizer que vai durar 743 horas e 54 minutos. É saber dizer a ordem de grandeza que estamos falando é uma semana, ou um mês, um semestre, um ano.</p>
<p>O que você faz quando precisa ir pra um lugar longe e não tem um Waze pra te guiar? Você pega um mapa. Mas não tem como ir vendo o mapa o tempo todo e dirigindo ao mesmo tempo. Então você dirige um trecho até onde acha que ainda sabe o caminho. Daí você pára, olha o mapa
e vê se continua no caminho certo. Daí prossegue. Pára de novo. De repente você nota que entrou numa curva errada, então você volta até a última bifurcação e corrige. E vai assim até o fim. Por isso a temos sprints ou iterações, senão você ia até o fim do caminho pela estrada errada e quando perceber que tinha feito uma curva errada, já é muito tarde pra voltar. Se for reavaliando em trechos menores, mesmo que precise voltar um pouco ainda dá tempo de corrigir. Faz sentido?</p>
<p>Essa é a essência de gerir um projeto: não é acertar todos os passos, mas garantir que se você errar - e vai por mim, você vai errar - dá tempo de voltar um pouco atrás e corrigir o percurso. Gerir não é evitar 100% dos erros, é garantir que o 1% que errar Não vai comprometer os 99%. Tente ir às cegas: você cai do barranco.</p>
<p>E como você sabe de quanto em quanto tempo parar? Na dúvida pára no menor período possível. Por isso quando me falam de sprints de 3 semanas eu dou muita risada. Significa que se você errar, você vai levar no mínimo 3 semanas pra corrigir e isso pode gerar um efeito cascata de erros que vai prejudicar pelo menos 1 mês e meio de trabalho. Agora começa a escalar isso, é assim que um projeto atrasa 1 ano.</p>
<p>E como você estima as coisas? Tanto faz. Esqueça fórmulas complicadas, diferença de story points, ou qualquer tipo de points. Usa uma escala assimétrica. O menos granular possível. Por exemplo: fácil, médio ou difícil. 1, 2, 5, 8. Por que assimétrico assim? Porque numa ordem de grandeza você quer saber só se a tarefa leva meio dia, um dia inteiro, dois dias ou 1 semana. Mais que isso tanto faz, 5 ou 4 ou 6 dias não faz diferença. Basta 1 story de 8 pontos pra quebrar suas pernas, daí as outras stories de 1 ou 2 pontos não fazem diferença porque essa de 8 é que vai definir seu andamento. É como a demonstração da esfera maior ou das bolinhas menores. Ordem de grandeza. Você só precisa saber quais são as histórias que representam o maior risco, e lidar com o risco. Talvez quebrar em história menores se possível.</p>
<p>Finalmente, você vai ter sua velocidade: quantas dessas histórias são possíveis de serem feitas dentro de um período ou sprint. Com uma ordem de grandeza de velocidade, agora você olha pro projeto como um todo e diz: com essa velocidade atual, dá pra chegar ao fim?</p>
<p>Normalmente não dá. Então você precisa começar a cortar o que é menor prioritário e está no fim da lista. E avisar o quanto antes todo mundo: NÃO VAI DAR TEMPO DE TUDO. É simples assim. Das duas uma: ou simplifica o que precisa fazer ou CORTA o excesso, corta. E não tenta como primeira opção aumentar o custo ou aumentar o tempo. Faz caber!
E nem adianta tentar aumentar a velocidade à força. É como no exemplo da viagem de carro sem Waze. Tenta acelerar sem ter certeza, você só vai errar mais bifurcações mais vezes e ter que voltar atrás mais vezes. Não compensa só pisar no acelerador.</p>
<p>Mas e se não for aceitável simplificar ou cortar? Então cancela o projeto, pára agora. Se a premissa inicial tava subestimada, é melhor aceitar um prejuízo pequeno do que tentar acelerar e no final gastar mais e o prejuízo aumentar.
É o problema do custo perdido. Sempre é melhor perder o que já gastou no curto prazo do que insistir no erro e no final gastar mais. Deixa eu parar pra explicar custo perdido um pouco.</p>
<p>Digamos que você comprou um ingresso de cinema mas só depois vai ver as críticas e descobre que o filme é uma droga por unaminidade. Assumindo que você não tem nenhum conhecido idiota que compraria seu ingresso, você tem duas opções:</p>
<ol>
<li>Já que você já pagou pelo ingresso, vai assistir pra não desperdiçar</li>
<li>Jogar o ingresso fora</li>
</ol>
<p>A falácia do custo perdido é não perceber que em qualquer das duas opções, você já pagou pelo ingresso e não vai ter reembolso e portanto o custo perdido não é relevante pra tomar uma decisão racional.</p>
<p>Opção 1: Você sofre o custo do ingresso + Você sofre pelo resto do filme
Opção 2: Você sofre só o custo do ingresso e não desperdiça também o seu tempo</p>
<p>Racionalmente a opção 2 é melhor.</p>
<p>E pra chegar nessa conclusão, primeiro você teve que fazer os passos anteriores que falei: enxergar os limites do projeto que são o tempo e o custo, enxergar o que é o objetivo do projeto, organizar o que é essencial e importante e o que é opcional e pode ser deixado pro fim ou até mesmo cortado, começar a fazer, parar e ver se não errou o caminho, e uma vez determinada a velocidade normal, ver o objetivo é alcançável ou não. E, se não for, parar imediatamente antes de gastar mais do que precisaria pra não chegar em lugar nenhum de qualquer jeito.</p>
<p>E isso, senhoras e senhores, é a essência de gerência de projetos. Avançar num objetivo inalcançavel, continuar remando num navio que vai afundar, não é gerenciar, é simplesmente dirigir às cegas sem um mapa. E tudo começa com priorização.</p>
<p>Como eu disse no começo, o objetivo desse vídeo não é transformar ninguém em um ultra gerente de projetos. É só introduzir os primeiros conceitos do que todo mundo, gerente ou não gerente, deveria saber. Em outros vídeos eu quero explorar alguns desses conceitos em mais detalhes, algum em especial que você tenha interesse? Não deixe de mandar nos comentários quais aspectos de projetos mais deixam você inquieto. E se gostou deste vídeo mande um joinha, assine o canal e não deixe de clicar no sininho pra não perder os próximos episódios.
A gente se vê até a próxima !</p>
]]></content:encoded><category>gestao</category><category>agile</category><category>produtividade</category><category>akitando</category></item><item><title>[Akitando] #8 - Procure o que você Ama ... SÓ QUE NÃO!</title><link>https://akitaonrails.github.io/2018/09/06/akitando-8-procure-o-que-voce-ama-so-que-nao/</link><guid isPermaLink="true">https://akitaonrails.github.io/2018/09/06/akitando-8-procure-o-que-voce-ama-so-que-nao/</guid><pubDate>Thu, 06 Sep 2018 17:00:00 -0300</pubDate><description>&lt;p&gt;Disclaimer: esta série de posts são transcripts diretos dos scripts usados em cada video do canal &lt;a href="https://www.youtube.com/channel/UCib793mnUOhWymCh2VJKplQ"target="_blank" rel="noopener"&gt;Akitando&lt;/a&gt;. O texto tem erros de português mas é porque estou apenas publicando exatamente como foi usado pra gravar o video, perdoem os errinhos.&lt;/p&gt;
&lt;div class="embed-container"&gt;
&lt;iframe
src="https://www.youtube.com/embed/A2-yU3YjB1U"
title="YouTube video player"
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;h3&gt;Descrição no YouTube&lt;span class="hx:absolute hx:-mt-20" id="descrição-no-youtube"&gt;&lt;/span&gt;
&lt;a href="#descri%c3%a7%c3%a3o-no-youtube" class="subheading-anchor" aria-label="Permalink for this section"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Mas hoje este vídeo é dedicado aos desenvolvedores de software, ou jovens em geral, que estão tão expostos a uma inundação de frases feitas que os deixam ansiosos, desmotivados, e sem saber muito bem o que fazer da vida. &amp;ldquo;Procurar o que ama&amp;rdquo;.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Disclaimer: esta série de posts são transcripts diretos dos scripts usados em cada video do canal <a href="https://www.youtube.com/channel/UCib793mnUOhWymCh2VJKplQ"target="_blank" rel="noopener">Akitando</a>. O texto tem erros de português mas é porque estou apenas publicando exatamente como foi usado pra gravar o video, perdoem os errinhos.</p>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/A2-yU3YjB1U"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<h3>Descrição no YouTube<span class="hx:absolute hx:-mt-20" id="descrição-no-youtube"></span>
    <a href="#descri%c3%a7%c3%a3o-no-youtube" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Mas hoje este vídeo é dedicado aos desenvolvedores de software, ou jovens em geral, que estão tão expostos a uma inundação de frases feitas que os deixam ansiosos, desmotivados, e sem saber muito bem o que fazer da vida. &ldquo;Procurar o que ama&rdquo;.</p>
<p>Vamos desmistificar isso.</p>
<p>Links:</p>
<ul>
<li>
<p>&lsquo;You&rsquo;ve got to find what you love,&rsquo; Jobs says (<a href="https://news.stanford.edu/2005/06/14/jobs-061505/"target="_blank" rel="noopener">https://news.stanford.edu/2005/06/14/jobs-061505/</a>)</p>
</li>
<li>
<p>A Brutal Truth About Following Your Passion and Doing What You Love That Few People Admit (<a href="https://www.inc.com/jeff-haden/a-brutal-truth-about-following-your-passion-and-doing-what-you-love-that-few-people-admit.html"target="_blank" rel="noopener">https://www.inc.com/jeff-haden/a-brutal-truth-about-following-your-passion-and-doing-what-you-love-that-few-people-admit.html</a>)</p>
</li>
<li>
<p>Five Reasons to Ignore the Advice to Do What You Love (<a href="https://www.forbes.com/sites/robasghar/2013/04/12/five-reasons-to-ignore-the-advice-to-do-what-you-love/#25bbc62f1096"target="_blank" rel="noopener">https://www.forbes.com/sites/robasghar/2013/04/12/five-reasons-to-ignore-the-advice-to-do-what-you-love/#25bbc62f1096</a>)</p>
</li>
<li>
<p>4 Myths about Doing What You Love for Work (<a href="https://tinybuddha.com/blog/4-myths-about-doing-what-you-love-for-work/"target="_blank" rel="noopener">https://tinybuddha.com/blog/4-myths-about-doing-what-you-love-for-work/</a>)</p>
</li>
<li>
<p>You should love what you do, not do what you love (<a href="https://www.businessinsider.com/you-should-love-what-you-do-not-do-what-you-love-2015-12"target="_blank" rel="noopener">https://www.businessinsider.com/you-should-love-what-you-do-not-do-what-you-love-2015-12</a>)</p>
</li>
<li>
<p>You’re Not Meant to Do What You Love (<a href="https://medium.com/s/story/youre-not-meant-to-do-what-you-love-you-re-meant-to-do-what-you-re-good-at-4e8e6b8e929d"target="_blank" rel="noopener">https://medium.com/s/story/youre-not-meant-to-do-what-you-love-you-re-meant-to-do-what-you-re-good-at-4e8e6b8e929d</a>)</p>
</li>
<li>
<p>Don’t Do What You Love; Do What You Do (<a href="https://hbr.org/2014/06/dont-do-what-you-love-do-what-you-do"target="_blank" rel="noopener">https://hbr.org/2014/06/dont-do-what-you-love-do-what-you-do</a>)</p>
</li>
<li>
<p>Don’t do what you love for a career—do what makes you money (<a href="https://qz.com/819233/do-what-you-love-is-bad-advice-work-for-money-not-for-passion/"target="_blank" rel="noopener">https://qz.com/819233/do-what-you-love-is-bad-advice-work-for-money-not-for-passion/</a>)</p>
</li>
<li>
<p>Don’t do what you love. (<a href="https://byrslf.co/dont-do-what-you-love-41312c943e2"target="_blank" rel="noopener">https://byrslf.co/dont-do-what-you-love-41312c943e2</a>)</p>
</li>
<li>
<p>Dont Follow Your Passion, Follow Your Effort (<a href="http://blogmaverick.com/2012/03/18/dont-follow-your-passion-follow-your-effort/"target="_blank" rel="noopener">http://blogmaverick.com/2012/03/18/dont-follow-your-passion-follow-your-effort/</a>)</p>
</li>
<li>
<p>Marc Andreessen Gives The Career Advice That Nobody Wants To Hear (<a href="https://www.businessinsider.com/andreessen-whatever-you-do-dont-follow-your-passion-2014-5"target="_blank" rel="noopener">https://www.businessinsider.com/andreessen-whatever-you-do-dont-follow-your-passion-2014-5</a>)</p>
</li>
<li>
<p>5 razões pelas quais o “faça o que ama” não é a solução (<a href="https://exame.abril.com.br/carreira/5-razoes-pelas-quais-o-faca-o-que-ama-nao-e-uma-solucao/"target="_blank" rel="noopener">https://exame.abril.com.br/carreira/5-razoes-pelas-quais-o-faca-o-que-ama-nao-e-uma-solucao/</a>)</p>
</li>
<li>
<p>AkitaOnRails: [Tradução] Carta para um Jovem Programador Considerando uma Startup (<a href="http://www.akitaonrails.com/2013/10/31/traducao-carta-para-um-jovem-programador-considerando-uma-startup"target="_blank" rel="noopener">http://www.akitaonrails.com/2013/10/31/traducao-carta-para-um-jovem-programador-considerando-uma-startup</a>)</p>
</li>
<li>
<p>AkitaOnRails: [Off-Topic] NÃO Faça o que Você (&ldquo;ACHA&rdquo;) que Ama (<a href="http://www.akitaonrails.com/2014/09/13/off-topic-nao-faca-o-que-voce-acha-que-ama"target="_blank" rel="noopener">http://www.akitaonrails.com/2014/09/13/off-topic-nao-faca-o-que-voce-acha-que-ama</a>)</p>
</li>
</ul>
<h2>Script<span class="hx:absolute hx:-mt-20" id="script"></span>
    <a href="#script" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Olá pessoal, Fabio Akita</p>
<p>Eu vi que semana que vem vai completar exatamente 4 anos que escrevi o post número 1.001 do meu blog.</p>
<p>Este vídeo é dedicado a todos vocês que estão insatisfeitos no seu trabalho. Que se sentem presos, fazendo coisas que não gosta, sentindo que está perdendo seu tempo. Que estão até sofrendo de ansiedade e ficando com depressão pensando nisso. Provavelmente tendo na sua cabeça, imagens como essa::</p>
<p>&hellip; (find what you love)</p>
<p>Quero dizer explorar o seguinte: por que você está pensando da forma errada? E talvez ajudar a responder o seguinte problema: o que eu devo fazer?</p>
<p>.. intro</p>
<p>Existe um livro muito ruim chamado &ldquo;Do what you Love and Money will Follow&rdquo; ou &ldquo;faça o que você ama que o dinheiro vem na sequência&rdquo;. É mais um desses livros que não dizem nada de muito prático. Economize seu tempo e não leia isso.</p>
<p>Mesmo assim, se você sair procurando, vai achar centenas de textos, artigos, posts, vídeos, palestras e até músicas dizendo exatamente a mesma coisa.</p>
<p>Eu funciono assim: toda vez que vejo uma afirmação muito repetida, se todo mundo repete “faça o que você ama” eu procuro o inverso dela: &ldquo;Não faça o que você ama&rdquo;. E normalmente o que vem é muito mais interessante. E o que eu encontrei na verdade foi muito mais alarmante do que eu pensava.</p>
<p>No nosso mundo mais restrito, ao redor de tecnologia, o mantra mais aceito é que todo mundo deveria ser um empreendedor, abrir sua própria startup, virar seu próprio chefe, mudar o mundo de alguma forma com mais um Uber-de-alguma-coisa &hellip; como se o mundo já não estivesse superlotado de clones de Uber.</p>
<p>Todo mundo parece repetir a mesma coisa: &ldquo;Faça o que ama e nunca vai trabalhar mais um dia da sua vida&rdquo;.</p>
<p>Bom, deixa eu começar: &ldquo;Faça o que você ama&rdquo; é simplesmente o pior conselho que você poderia receber. E se você levar isso ao pé da letra, prepare-se pra viver uma vida de frustrações.</p>
<p>Você quer trabalhar numa startup, quer o ambiente agitado, cheio de brindes, Nespresso à vontade, Xbox na sala de jogos, pizzas na madrugada. E aí? E depois do milésimo nespresso, depois que já cansou de jogar Fifa todo dia, depois que ganhou 10kg de tanta pizza. E aí? E aí?</p>
<p>E agora vem a segunda grande verdade: você tá infeliz no seu trabalho, frustrado com sua vida, não porque você não encontrou o que você ama, ou porque as pessoas não “deixam” você fazer do jeito que você quer, mas porque você não gosta de você mesmo. Deixa eu ser mais específico: você faz as coisas meia boca. Você pode se justificar pro mundo do jeito que quiser, mas você não gosta do que você mesmo produz. Porque você só faz o mínimo pra ir levando a vida, vai tirando nota 5 pra passar de ano. Fica esperando a tal “grande” oportunidade magicamente cair no seu colo. O que você produz não é o seu melhor e você sabe disso.</p>
<p>Deixa eu continuar o vídeo do Jobs::</p>
<p>… (Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do)</p>
<p>“Grande trabalho” não quer dizer “trabalhar numa grande empresa” ou “num grande produto que vai mudar o mundo”. É simplesmente a qualidade do resultado do SEU trabalho. Um grande trabalho. A única forma de estar verdadeiramente satisfeito é fazer o que você acredita ser SEU grande trabalho. E a única forma de fazer um grande trabalho é amar o que você faz, ou seja, o SEU próprio esforço e suor. Entendeu? Não importa o que você faz. Se você é um pedreiro, seja o melhor pedreiro e levanta a melhor parede. Se você faz buque de flores, faça os melhores buques de flores. Se você, como eu, é um programador, entregue o melhor código possível!</p>
<p>O seu ramo de atividade, seu cargo, seu chefe, a empresa onde trabalha não tem NADA a ver com a qualidade do seu trabalho.</p>
<p>A: “ow ow Cara, bonito isso aí, mas quer ver, não dá pra fazer meu ‘melhor trabalho’ assim, na empresa onde eu trabalho o FDP que vende projeto só promete o impossível e aí eu só me fodo varando noite pra entregar de qualquer jeito, tá ligado?”</p>
<p>Eu já passei por isso, sabe o que eu fiz? Eu comecei a ir junto com o vendedor pros clientes, daí eu mesmo escrevia a proposta do projeto de um jeito que eu sabia que dava pra entregar. Aprendi que era difícil vender. Aprendi como escrever boas propostas. Aprendi como convencer o cliente a fazer o que realmente fazia sentido.</p>
<p>A: “Ah, mas não adianta, por exemplo, eu tava num trampo que a gente ralava pra fazer o melhor produto possível, mas ninguém usava porque o marketing da empresa era muito ruim”</p>
<p>Eu sei como é, já passei por isso também. Sabe o que eu fiz? Eu sai da minha cadeira da área de programação e fui puxar uma cadeira lá no departamento do marketing. No final eu que passava o texto que ia pro marketing. Aproveitei e eu mesmo fui pro jurídico e aprendi a escrever os termos de serviço do produto também de bonus.</p>
<p>A: “Puuuts, que trampo heim. Mas não adianta, a gente ralava pra fazer as coisas direito mas os clientes só ligavam reclamando. Os caras não sabem usar e ficam reclamando”.</p>
<p>Verdade, já passei por isso, depois de um tempo eu puxei uma cadeira lá no suporte e comecei a atender algumas ligações e ler os tickets do help desk eu mesmo, aí começou a fazer mais sentido que o que a gente tava fazendo era complicado mesmo e começamos a tentar facilitar o produto. Comecei a aprender o que significava fazer um produto.</p>
<p>A: “Não é só isso Não, tem uns caras do trampo que em vez de ajudar só ficam me tirando, puxando meu tapete, ficam sabotando em vez de ajudar, aí não rola né?”</p>
<p>Ah, já passei muito por isso. Quantas vezes não tive que trabalhar dobrado consertando o que os outros tinham quebrado. Quantas vezes ainda tive que tomar a culpa pelos bugs que os outros causaram. Cliente que já me xingou sem saber que foi o gerente do lado dele que sabotou o trampo. Ou concorrente que veio causando. A gente vai aprendendo a lidar com isso, no final eu sempre pensei que se a coisa chegou nesse ponto no fundo eu que ainda não era bom o suficiente pra saber contornar melhor ou antes. É uma coisa que eu ainda to aprendendo. Já ganhei muito inimigo de graça por causa disso. Pelo menos eu estudei muito técnicas de gestão, negociação e tudo mais que podia pra ver se eu melhorava nisso.</p>
<p>A: “Mas não adianta, a gente fica mesmo discutindo que tinha que fazer o produto melhor, mas os caras que codam lá junto comigo, nem tem nível pra entender como fazer código decente. Nem dava vontade de fazer direito”.</p>
<p>É complicado né? Teve uma época que eu queria poder usar o código de outro departamento e não podia. Era 2009 isso, antes do Github ficar conhecido. Cada grupo tinha um repositório de código e tinha que pedir pra ficar pedindo pra eles mudarem o código deles do jeito que a gente precisava. Mas aí eu pensei, se tudo ficasse no Git, todo mundo ia poder mexer no código de todo mundo. Sabe o que eu fiz? Comecei a ensinar todo mundo a usar Git. Um por um, eu ia de mesa em mesa ensinando. Até o dia que tudo foi pro Git. Não era perfeito, deu mó confusão, mas no final funcionou. Se você acha que sabe melhor do que seus colegas, porque você não está ensinando pra eles como fazer certo então?</p>
<p>A: “Ah, eu já tentei, mas eles não me escutam. Devem ser burros mesmo”</p>
<p>Pode ser. Mas eu pensava assim: as pessoas normalmente tem barreira pra aprender coisa nova mesmo. Então eu ficava dando jeitos de tentar explicar, normalmente o que eu achava mais fácil era mostrando mesmo. Na maioria das vezes eu não conseguia, mas eu considerava isso uma falha de eu ainda não ser bom o suficiente, então fui melhorando meu jeito de convencer. Olha só, esse canal é UM desses jeitos.</p>
<p>A: “Afe, mas então se você ficava fazendo tudo isso então trabalhava dobrado? Você ganhava mais que todo mundo pra ficar fazendo essas coisas?</p>
<p>Não, eu provavelmente ganhava menos que muitas das pessoas de cada departamento que eu falei. E sempre foi assim em todos os empregos que eu passei. Nunca fui necessariamente o que ganhava melhor, a despeito do que os outros pensavam.</p>
<p>A: “Então você era otário, trabalhava a mais e não ganhava mais por isso? Qual é a vantagem?”</p>
<p>Muitas! Anos depois eu finalmente vi que tinha experiência suficiente e surgiu a oportunidade de abrir minha própria empresa. E eu já sabia como vender projeto, como fazer marketing, como lidar com jurídico, como ensinar as pessoas, como organizar os projetos, como entender os clientes e como entregar produtos.
E mesmo assim, sabendo tudo isso foi dureza começar, não imagino como as pessoas começam sem saber nada disso, provavelmente por isso a maioria das empresas novas de recém formados acaba antes do segundo ano. E o povo que eu fui conhecendo pelo caminho? Eles também cresceram e sabiam que podiam contar comigo e nos anos que se seguiram eles voltaram e muitos viraram meus clientes por exemplo.</p>
<p>A: “Ah … tá, mas eu também já fiz algo assim, eu sempre faço do jeito que me mandam, e ninguém nunca reclamou, então eu vou fazendo, qual o problema? Não é o suficiente?”</p>
<p>Bom, eu penso assim, uma época eu decidi correr, só pra fazer graça mesmo. Eu evito ficar muito tempo em academia porque eu acabo querendo ir além do que eu deveria. Comecei correndo 500m e morria, mesmo pouco, todo dia eu corria 100m a mais. Um belo dia eu tava correndo o percurso da São Silvestre, só pra saber se conseguia. Quando consegui, fui fazer outra coisa. Fazer a mesma rotina todo dia só vai me fazer correr 500m. 100m de cada vez, um pouco todo dia, é o único jeito de correr são silvestre. Não que eu quisesse virar corredor, mas se dá pra correr 20km porque me contentar com 5km?</p>
<p>A: “Porra. Você é meio CDF né? Parece os moleque que o povo gosta de zoar na escola pq só tira 10. Pra que tirar 10? 5 já dá pra passar de ano. Perda de tempo.”</p>
<p>Quando eu era criança e tava na escola era assim mesmo que me chamavam. Ninguém dava muita bola pra mim. Tinha bully de vez em quando. Mas, quando tinha trabalho em grupo, adivinha quem era o primeiro que escolhiam? E você acha que eles ajudavam? Ha. Porra nenhuma, só apareciam no último dia pra colocar o nome na capa.
Sempre me dava nervoso porque precisa que eu tava dando nota de graça pra eles. Mas no fundo eu sempre fazia pra tirar nota máxima porque EU não queria tirar nota baixa. Mesmo eu dando nota boa pra eles, eles ainda iam desperdiçar tirando nota baixa nas provas de qualquer jeito. Eu fazia por mim. Foi assim que começou mesmo. Porque eu não me contento com 5? Porque bullies como eles tiravam 5.</p>
<p>Vamos ver o que o Jobs tem a dizer:</p>
<p>…</p>
<p>Você só pode conectar os pontos pra trás. Se pra trás só tem pontos que você não gosta, porque você acha que no futuro vai ter pontos melhores?</p>
<p>Não to dizendo que dinheiro ou qualidade de vida não são importantes. Todo mundo quer isso. E eu sei que tem muita gente com muita dificuldade, que sequer pode se dar ao luxo de escolher o que fazer ou onde trabalhar. Mas eu suspeito que mesmo na pior das condições, você viver satisfeito, ou melhor, com você mesmo não tem preço. Não é pelos outros. É por você. É o seu trabalho. É o seu esforço.</p>
<p>Isso é receita pra você ser reconhecido? É receita pra ficar rico? Não. É uma receita pra você não desperdiçar sua carreira e nem sua vida.</p>
<p>Por que vocês acham que eu estou fazendo estes vídeos? Pra virar YouTuber super star? Não, 1 eu to fazendo porque eu queria ver se eu conseguia e 2 já que to fazendo, quero saber até onde consigo ir. Não tem nada mais divertido do que virar júnior em alguma coisa de novo. Eu só tenho tempo pra gravar e editar a noite e de madrugada. Eu não penso “olha só que foda, eu trabalho pra caralho e ainda fico todo dia até 4 da manhã”. Eu não tenho chefe pra impressionar. Eu penso “que droga, eu sou muito junior mesmo, se eu fosse melhor eu tinha acabado muito mais rapido e melhor” então todo episódio eu fico procurando algum jeito de fazer um pouco mais rápido e um pouco melhor.</p>
<p>Entenderam? Eu não faço YouTube porque eu amo YouTube ou porque eu sempre sonhei em ser YouTuber. Nem existia isso nos anos 90. Eu não faço a THE CONF que é minha conferência porque eu amo fazer conferências. Eu não tenho 2 empresas porque eu amo ser empreendedor. Eu não aprendo novas linguagens de programação porque eu amo programar. Eu faço tudo isso simplesmente  porque eu gosto do meu suor por trás do resultado. E não precisa ser coisas grandiosas, qualquer pequena coisa conta. Você não chega a mais de 1000 posts ou mais de 200 palestras se toda hora você só pensa no dia que vai estar num palco com 1000 pessoas. Sexta passada fui palestrar num meetup, talvez 30 pessoas. Não faz diferença se tem 1000 ou 30, importa eu dar a palestra, podia ser pra 5 pessoas.</p>
<p>Imagine se eu tivesse ficado os últimos 20 anos pensando “ah, o dia que eu trabalhar na Microsoft”, ou “ah, o dia que me derem chance”, ou “ah, o dia que me reconhecerem”, ou “ah, o dia que me pagarem mais”. Ia estar esperando até hoje.</p>
<p>Pra finalizar, existem os que estão preocupados porque acham que não nasceram com talento. Alguns de vocês nessa posição olham pra pessoas mais experientes ou mesmo celebridades e se conformam: eu nunca vou chegar lá. Pra mover uma montanha de lugar você começa movendo uma pedra de cada vez. Em breve, eu espero, fazer 2 episódios por semana sem precisar varar noite - agora por exemplo, já passou da meia noite e eu estou gravando, eu falhei de novo.
Esforço é universal. Não importa quão inteligente você acha que é, não importa quão talentoso você acha que é, não importa sua posição social, gênero ou idade. Esforço é simplesmente isso: esforço. Uma pedra de cada vez, um dia de cada vez. Um dia os esforços me levaram até a posição onde eu pude agarrar oportunidades e sobreviver a elas. Nesse exato momento eu to aqui, me esforçando, apanhando mais um pouco. Eu olho os moleques de YouTube, muitos estudaram fotografia e cinema e eu penso, caramba, esses caras são bons. Mas não importa, é uma view de cada vez. Um joinha de cada vez. Quem sabe, daqui 5 anos? Ou 10? Não importa.</p>
<p>Entenderam? Em vez de ficar sonhando, volta pra Terra, arregaça as mangas e simplesmente faz melhor. O que você tem que fazer? Tem TCC pra fazer? Tem projeto pra entregar? Tá atrasado? Não existe falta de tempo. Uma coisa que todo mundo tem igual é tempo. Tem quem aprendeu a usar o tempo melhor, tem quem tá empurrando com a barriga.</p>
<p>Você tá frustrado no seu emprego, pensando em mudar de emprego? Você tá frustrado com seu mundo? Quer mudar de mundo? Não adianta. Enquanto você tá frustrado com sua falta de esforço, qualquer emprego, qualquer lugar, vai terminar do mesmo jeito, porque a realidade é que tudo tem partes ruins, todo trabalho tem partes chatas, a VIDA tem muitas partes chatas. Começa fazendo as pequenas coisas direito, e vai se acostumando a parar de justificar sua frustração como sendo culpa da sua família, dos colega, do seu chefe, do dos políticos.
Apontar defeitos dos outros é simples, qualquer idiota pode fazer isso. E os seus? Começa a onde realmente importa: tomando controle do que você mesmo faz. Já que vai fazer, faz direito, qualquer coisa.
Em vez de dizer pros outros como fazer certo, que tal mostrar pros outros como fazer certo?</p>
<p>Bom, esse episódio acabou ficando um pouco auto-ajuda, tudo que eu disse até aqui é minha opinião pessoal formada na minha experiência das últimas décadas pra tentar dar alguma perspectiva. E qual é a sua experiência? Mande pra galera nos comentários abaixo, se curtiram esse vídeo dêem um joinha, assinem o canal e compartilhem com seus amigos! A gente se vê na próxima, e na próxima espero que não seja de madrugada de novo ;-) Até mais!</p>
]]></content:encoded><category>carreira</category><category>produtividade</category><category>psicologia</category><category>akitando</category></item><item><title>Novo Layout (versão 2015)</title><link>https://akitaonrails.github.io/2015/10/13/novo-layout-versao-2015/</link><guid isPermaLink="true">https://akitaonrails.github.io/2015/10/13/novo-layout-versao-2015/</guid><pubDate>Tue, 13 Oct 2015 15:16:00 -0300</pubDate><description>&lt;p&gt;Faz tempo que não faço uma limpa no meu blog. Acredito que pelo menos desde 2011 não faço uma grande mudança na estrutura.&lt;/p&gt;
&lt;p&gt;Meu problema com este blog é fazer com que os leitores novos consigam encontrar conteúdo que publiquei no passado (desde 2006!) que ainda seja relevante hoje.&lt;/p&gt;
&lt;p&gt;Com isso em mente eu repassei manualmente por todos os &lt;strong&gt;1025&lt;/strong&gt; posts que já publiquei até hoje e refiz os tags de todos eles, um por um! Com isso consegui marcar tudo que certamente já não é mais relevante hoje com a tag &amp;ldquo;obsolete&amp;rdquo;. E isso deu uma contagem de 613 posts.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Faz tempo que não faço uma limpa no meu blog. Acredito que pelo menos desde 2011 não faço uma grande mudança na estrutura.</p>
<p>Meu problema com este blog é fazer com que os leitores novos consigam encontrar conteúdo que publiquei no passado (desde 2006!) que ainda seja relevante hoje.</p>
<p>Com isso em mente eu repassei manualmente por todos os <strong>1025</strong> posts que já publiquei até hoje e refiz os tags de todos eles, um por um! Com isso consegui marcar tudo que certamente já não é mais relevante hoje com a tag &ldquo;obsolete&rdquo;. E isso deu uma contagem de 613 posts.</p>
<p>Significa que ainda existem nada menos que <strong>412</strong> posts que podem ser lidos ainda hoje! O que está listado na homepage é 100% dos posts não-obsoletos.</p>
<p>Procure pelas seguintes tags:</p>
<ul>
<li><a href="/off-topic/">off-topic</a> - são meus famosos posts &ldquo;gigantes&rdquo; com diversos assuntos, não só programação</li>
<li><a href="/rails">rails</a> - são os posts especificamente para programadores Ruby on Rails</li>
<li><a href="/career">career</a> - são off-topics mais focados na carreira de um programador</li>
<li><a href="/management">management</a> - são os off-topic mais focados em gerenciamento de projetos em geral</li>
</ul>
<p>Ultimamente, em diversas discussões online que participei a resposta tem sido eu copiar e colar o link de algum post que eu já escrevi. Muita coisa em discussão hoje eu já discuti em detalhe no passado, então explore. Para facilitar eu removi paginação deste site, então dos links acima e, principalmente da homepage, você tem acesso de uma vez só a todos os 412 posts, desde 2006 até hoje!</p>
<p>Também queria uma tipografia mais confortável e pra isso escolhi o <a href="http://typeplate.com/"target="_blank" rel="noopener">Typeplate</a>. Não sei se é realmente tão boa quanto dizem mas gostei da aparência até agora. Com o tempo vou começar a limpar erros, links quebrados, imagens quebradas, meus posts mais antigos, se quiserem colaborar não deixem de comentar aqui para facilitar.</p>
<p>O conceito é <strong>&ldquo;bare-essentials&rdquo;</strong>. Por exemplo, porque um sistema de busca se um simples &ldquo;Find&rdquo; do próprio navegador é suficiente se eu listar tudo na própria homepage? Qualquer coisa mais complexa de procura todo mundo acaba usando o Google de qualquer forma. Além disso, listar tudo na homepage faz o tamanho do HTML ficar em meros <strong>250kb</strong>, então coisas como paginação ou &ndash; eca &ndash; scroll infinito são inúteis. Não precisa de botões de redes sociais, no fim eu mesmo já posto e todo mundo só retwita de qualquer forma e isso elimina um monte de javascript desnecessário. No fim é somente o extremamente essência: texto.</p>
<p>Enjoy!</p>
]]></content:encoded><category>blog</category><category>produtividade</category></item><item><title>[Small Bites] IDEs e Editores, como escolher?</title><link>https://akitaonrails.github.io/2014/07/31/small-bites-ides-e-editores-como-escolher/</link><guid isPermaLink="true">https://akitaonrails.github.io/2014/07/31/small-bites-ides-e-editores-como-escolher/</guid><pubDate>Thu, 31 Jul 2014 19:54:00 -0300</pubDate><description>&lt;p&gt;Todo ano, em toda lista de discussão, algum iniciante sempre vai perguntar: &lt;em&gt;&amp;ldquo;Que IDE devo usar?&amp;rdquo;&lt;/em&gt; E isso vai gerar sempre todo tipo de flame war.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.jetbrains.com/ruby/"target="_blank" rel="noopener"&gt;&lt;img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/458/Screen_Shot_2014-08-01_at_15.09.35.png" alt="RubyMine" loading="lazy" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;O TL;DR para este post é o seguinte:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se quiser 100% open source e old school: Vim com &lt;a href="https://github.com/robbyrussell/oh-my-zsh"target="_blank" rel="noopener"&gt;Oh-My-Zsh&lt;/a&gt; ou &lt;a href="https://github.com/skwp/dotfiles"target="_blank" rel="noopener"&gt;YADR&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Se quiser 100% open source e hipster: &lt;a href="https://atom.io"target="_blank" rel="noopener"&gt;Atom.io&lt;/a&gt;, que é o editor feito em Javascript pelo Github.&lt;/li&gt;
&lt;li&gt;Se quiser o melhor moderno, mas comercial: &lt;a href="http://www.sublimetext.com"target="_blank" rel="noopener"&gt;Sublime Text&lt;/a&gt;. Não é barato, a USD 70, mas garanto que vale cada centavo, especialmente aliado ao &lt;a href="https://sublime.wbond.net"target="_blank" rel="noopener"&gt;Package Control&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Se quiser o melhor old school, mas comercial: &lt;a href="http://macromates.com"target="_blank" rel="noopener"&gt;Textmate&lt;/a&gt;, está estagnado há anos desde que se tornou o favorito dos Railers na era 2006-2009, mas a versão 1.5.x (não a 2.0) é muito boa, e eu pessoalmente ainda uso para várias coisas ainda hoje.&lt;/li&gt;
&lt;li&gt;Se quiser uma IDE de verdade, com ferramentas mais avançadas para refactoring e debugging, definitivamente use &lt;a href="http://www.jetbrains.com/ruby/"target="_blank" rel="noopener"&gt;RubyMine&lt;/a&gt;. Custa USD 99 e vale cada centavo, ou se você mantém projetos open source, pode requisitar uma licença gratuita&lt;/li&gt;
&lt;li&gt;Se for somente um montador de front-end, uma opção para Mac que parece interessante é o &lt;a href="https://panic.com/coda/"target="_blank" rel="noopener"&gt;Coda 2&lt;/a&gt;, disponível na App Store.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Aliás, para entender uma diferença crucial de filosofias entre Vim e Atom/Sublime/Textmate, leia este ótimo artigo &lt;a href="https://medium.com/@mkozlows/why-atom-cant-replace-vim-433852f4b4d1"target="_blank" rel="noopener"&gt;&amp;ldquo;Why Atom Can’t Replace Vim&amp;rdquo;&lt;/a&gt;. Vim, assim como Emacs, tem uma filosofia própria.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Todo ano, em toda lista de discussão, algum iniciante sempre vai perguntar: <em>&ldquo;Que IDE devo usar?&rdquo;</em> E isso vai gerar sempre todo tipo de flame war.</p>
<p><a href="http://www.jetbrains.com/ruby/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/458/Screen_Shot_2014-08-01_at_15.09.35.png" alt="RubyMine"  loading="lazy" /></a></p>
<p>O TL;DR para este post é o seguinte:</p>
<ul>
<li>Se quiser 100% open source e old school: Vim com <a href="https://github.com/robbyrussell/oh-my-zsh"target="_blank" rel="noopener">Oh-My-Zsh</a> ou <a href="https://github.com/skwp/dotfiles"target="_blank" rel="noopener">YADR</a>.</li>
<li>Se quiser 100% open source e hipster: <a href="https://atom.io"target="_blank" rel="noopener">Atom.io</a>, que é o editor feito em Javascript pelo Github.</li>
<li>Se quiser o melhor moderno, mas comercial: <a href="http://www.sublimetext.com"target="_blank" rel="noopener">Sublime Text</a>. Não é barato, a USD 70, mas garanto que vale cada centavo, especialmente aliado ao <a href="https://sublime.wbond.net"target="_blank" rel="noopener">Package Control</a></li>
<li>Se quiser o melhor old school, mas comercial: <a href="http://macromates.com"target="_blank" rel="noopener">Textmate</a>, está estagnado há anos desde que se tornou o favorito dos Railers na era 2006-2009, mas a versão 1.5.x (não a 2.0) é muito boa, e eu pessoalmente ainda uso para várias coisas ainda hoje.</li>
<li>Se quiser uma IDE de verdade, com ferramentas mais avançadas para refactoring e debugging, definitivamente use <a href="http://www.jetbrains.com/ruby/"target="_blank" rel="noopener">RubyMine</a>. Custa USD 99 e vale cada centavo, ou se você mantém projetos open source, pode requisitar uma licença gratuita</li>
<li>Se for somente um montador de front-end, uma opção para Mac que parece interessante é o <a href="https://panic.com/coda/"target="_blank" rel="noopener">Coda 2</a>, disponível na App Store.</li>
</ul>
<p>Aliás, para entender uma diferença crucial de filosofias entre Vim e Atom/Sublime/Textmate, leia este ótimo artigo <a href="https://medium.com/@mkozlows/why-atom-cant-replace-vim-433852f4b4d1"target="_blank" rel="noopener">&ldquo;Why Atom Can’t Replace Vim&rdquo;</a>. Vim, assim como Emacs, tem uma filosofia própria.</p>
<h2>Qual escolher?<span class="hx:absolute hx:-mt-20" id="qual-escolher"></span>
    <a href="#qual-escolher" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Emacs, assim como Vim, é uma boa opção também, mas como não sou especialista em ELisp, vou deixar passar. Mas pra quem se interessa em se aprofundar em hacking old school, vai fundo! Aliás, o miner Andrew me indicou o pacote <a href="https://github.com/bbatsov/prelude"target="_blank" rel="noopener">Prelude</a>, feito pelo <a href="https://github.com/bbatsov"target="_blank" rel="noopener">Bozhidar Batsov</a>, o mesmo do Rubocop, ruby-style-guide, etc. Outros que não listei como Dreamweaver, obviamente é o extremo oposto: não use.</p>
<p>Textmate é somente para pessoas como eu, que pegaram Rails entre 2005 e 2009. É difícil largar ele mesmo com novas opções. Se você nunca usou, não vai sentir falta. O Sublime Text veio pra substituí-lo e faz tudo que o Textmate faz, com a vantagem que tem opções pra Windows e Linux. O Atom.io é a mesma coisa que o Sublime, mas um pouco mais lento, por outro lado é grátis, então é uma escolha de custo-benefício. E eu vou dizer que minha sensação é que é mais lento se considerar que estou acostumado com Vim. Se nunca usou Vim ou mesmo Sublime/Textmate, talvez não note.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/444/Screen_Shot_2014-07-31_at_19.32.32.png" alt="Textmate Classic"  loading="lazy" /></p>
<p>O RubyMine é da excelente família de IDEs da JetBrains, que desde os anos 90 se manteve como uma das melhores IDEs Java com o <a href="http://www.jetbrains.com/idea/"target="_blank" rel="noopener">IntelliJ</a>, que sempre teve o melhor conjunto de auxílios para refatoramento. Depois da decaída dos fabricantes de IDEs, como Borland, a JetBrains foi quem se manteve firme e forte, implementando qualidade. Eles evoluíram e, se você for desenvolvedor .NET é quase obrigatório instalar o <a href="http://www.jetbrains.com/resharper/"target="_blank" rel="noopener">ReSharper</a> para vitaminar o magro Visual Studio. Se você é desenvolvedor Python, vai gostar muito do <a href="http://www.jetbrains.com/pycharm/"target="_blank" rel="noopener">PyCharm</a>.</p>
<p>O RubyMine faz tudo que eu considero importante como editor (que é o que vamos listar abaixo) e mais, então vou deixar para um outro post exclusivamente sobre RubyMine. Aguardem!</p>
<p>Voltando ao assunto, um bom editor de textos precisa de poucas coisas pra funcionar decentemente:</p>
<p>Esqueça o Vim-mode onde você &ldquo;acha&rdquo; que vai se tornar um programador mais rápido porque sabe deletar 10 linhas pra baixo fazendo a combinação d10j em vez de selecionar as linhas com o mouse e apagar ou selecionar usando shift+setas e apagar. A maioria dos desenvolvedores não escrever uma média maior que 50 linhas de código por dia durante um ano. Tem dias que digita 1000, tem dias que digita 0. Se vai ficar se preocupando se digitou 10 caracteres a mais, ou a menos, faça alguma coisa sobre os dias que ficou procrastinando com Dota 2 ou YouTube. Quantidade de keystrokes, pra granda maioria dos desenvolvedores, é uma desculpa para tentar mostrar que entende mais do que acha que sabe.</p>
<p>Produtividade é uma questão de <strong>FOCO</strong>. Faça uma coisa de cada vez, prioridade no que está fazendo. Se está programando, desligue as notificações do sistema operacional, deixe seus comunicadores em &ldquo;Away&rdquo; ou &ldquo;Busy&rdquo; e elimine interrupções. Veja Facebook, YouTube e jogue Dota no fim do dia. Só assim você ganha produtividade, não economizando shortcuts de editor de texto. Por mais que você acredite no oposto preste atenção: você não é bom em multitasking, ninguém é. Uma coisa de cada vez, começo até o fim, é o <strong>único</strong> jeito de ser ágil.</p>
<p>Portanto, sim, eu gosto de usar o Vim-mode, mas não 100% do tempo. Eu prefiro usar MacVim porque se eu quiser, posso selecionar coisas com o mouse também e não estou sendo &ldquo;menos produtivo&rdquo; por causa disso. O Vim-mode é importante porque quando estou no Vim de Terminal, via SSH num servidor remoto, obviamente não posso usar o mouse. E esse é outro motivo de porque todo mundo tem que saber pelo menos o básico de Vim: para configurar servidores remotos, se necessário (normalmente não deveria ser, pra isso servem deployments automatizados, mas isso é assunto pra outro post).</p>
<p>Outra coisa importante é selecionar não só caracteres, palavras e linhas mas também colunas verticais. O Vim tem o bom e velho Ctrl-V (:help CTRL-V). Sublime Text tem <a href="https://www.sublimetext.com/docs/2/column_selection.html"target="_blank" rel="noopener">Column Selection</a> e Atom tem que instalar um pacote como o <a href="https://github.com/bigfive/atom-sublime-select"target="_blank" rel="noopener">Sublime Style Column Selection</a>. Mas nem Sublime e nem Atom ainda são melhores que Textmate e Vim nesse departamento. Mas pelo menos todos eles tem o recurso: qualquer editor de texto que não permite selecionar colunas verticais de texto é obsoleto e não presta pra desenvolver. Nada supera o Ctrl-V do Vim, mas o do Atom e Sublime Text são funcionais o suficiente. O Sublime uma coisa extra que é melhor: edição em múltiplas partes do texto, basta selecionar uma variável, usar Command-D para selecionar as mesmas ocorrências e, quando for editar, ele vai editar em múltiplos lugares. É como um Find e Replace &ldquo;in-place&rdquo;.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/445/Screen_Shot_2014-07-31_at_19.35.22.png" alt="Sublime Text Column Selection"  loading="lazy" /></p>
<p>Falando em Find e Replace, obviamente a coisa mais importante é suportar Regular Expressions. No Vim é o comando &ldquo;%s/blabla/foofoo/g&rdquo;. Nos outros editores tem um ícone &ldquo;.*&rdquo; que muda de Find de texto para Find usando Regex. Textmate tinha isso e os outros também funciona razoavelmente bem. Extremamente importante!</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/446/Screen_Shot_2014-07-31_at_19.36.59.png" alt="Atom Find com Regex"  loading="lazy" /></p>
<p>Customização de temas e code highlighting corretos são importantes, já que você vai passar o dia todo olhando pra código, é bom que ele seja agradável. Os dois melhores temas, de longe, são os <a href="http://ethanschoonover.com/solarized"target="_blank" rel="noopener">Solarized</a> Dark e Light (eu pessoalmente prefiro o Dark). Esse é tema &ldquo;cientificamente&rdquo; produzido, a paleta de cores com o melhor balanço de contraste e cor para desenvolvedores. Na dúvida, instale Solarized Dark. Todos os editores listados tem esse tema.</p>
<p>Em particular, meu Textmate usa o tema &ldquo;Mac Classic&rdquo;, é o melhor tema para screencasts e slides para projetor (em projetor sempre use letras escuras em fundo branco!) Falando nisso, lembre-se que LCD emite luz na sua cara. Branco é luz total. Tema branco é garantia de cansar sua vista muito mais rápido. Por isso algo como o Solarized Dark, para quem fica codificando o dia todo, é sempre o mais recomendado.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/447/Screen_Shot_2014-07-31_at_19.37.59.png" alt="Sublime Text Theme"  loading="lazy" /></p>
<p>Todo bom editor precisa ter um índice de arquivos e uma maneira &ldquo;fuzzy&rdquo; de encontrar. O Textmate foi quem imortalizou o hoje ubíquito &ldquo;Command-T&rdquo;. O pacote YADR para Vim trás o excelente similar, <a href="https://github.com/kien/ctrlp.vim"target="_blank" rel="noopener">CtrlP</a>. O Sublime e Atom, ambos tem um similar ativado com a combinação de teclas &ldquo;Command-T&rdquo;. Isso é essencial para navegar rapidamente pelo seu projeto. Um &ldquo;Project Pane&rdquo;, com a versão visual em árvore do seu diretório de projetos não é útil para navegar rapidamente, mas sim para encontrar coisas que você não lembra o nome mas tem uma idéia de onde fica na estrutura de sub-diretórios. Todo bom editor tem um Project Pane, o Vim tem o plugin <a href="https://github.com/scrooloose/nerdtree"target="_blank" rel="noopener">NerdTree</a>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/441/Screen_Shot_2014-07-31_at_19.26.29.png" alt="Atom Command T"  loading="lazy" />
<img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/440/Screen_Shot_2014-07-31_at_19.24.36.png" alt="Sublime Text Command T"  loading="lazy" />
<img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/442/Screen_Shot_2014-07-31_at_19.28.05.png" alt="Vim CtrlP"  loading="lazy" /></p>
<p>Finalmente, existem os &ldquo;Snippets&rdquo;, trechos de código que funcionam como template. Novamente, todos os editores tem pacotes de snippets para cada linguagem. Foi outra coisa que o Textmate tornou famoso, com seus <a href="https://github.com/drnic/ruby-on-rails-tmbundle"target="_blank" rel="noopener">&ldquo;bundles&rdquo;</a> e agora todo mundo copiou. Não precisamos de muita coisa, apenas o suficiente para coisas como digitar &ldquo;def&rdquo;, apertar &ldquo;tab&rdquo; e poder digitar o nome do método e o editor automaticamente identar e colocar o &ldquo;end&rdquo; pra fechar. Não fique muito viciado nisso, eles são úteis mas não devem ser utilizados para trechos grandes demais, senão seu código vira um grude de copy e paste. Para boilerplates, temos os diversos generators de frameworks como Rails e Yeoman para Javascript. Para HTML temos Slim e HAML para &ldquo;economizar&rdquo; simplificar burocracia de tags. No Sublime Text e Atom você pode usar o Package Control de cada um para procurar e instalar os bundles pra suas linguagens favoritas. O YADR já trás diversos plugins como o <a href="https://github.com/tpope/vim-rails"target="_blank" rel="noopener">Vim Rails</a> que criaram a fama do lendário Tim Pope.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/448/Screen_Shot_2014-07-31_at_19.39.43.png" alt="Sublime Text Snippets"  loading="lazy" /></p>
<p>Todos suportam &ldquo;tabs&rdquo; para abrir múltiplos arquivos. Mas se você é um desenvolvedor sério, provavelmente trabalha com <a href="http://www.macdrifter.com/2012/07/sublime-text-working-with-multiple-panes.html"target="_blank" rel="noopener">Split Screen ou Multiple Panes</a>, que no Sublime são diversas combinações como Command-Alt-Shift-2 para split horizontal ou o Command-K e seta-pra-baixo no Atom, ou simplesmente &ldquo;:sp&rdquo; no Vim (Vim rulez!). É a única feature única que Textmate nunca suportou. É absolutamente essencial para que em um pane fique seu código e no outro pane fique o teste desse código! Lembre-se, TDD ou Test-After, não importa, faça testes! Ou no caso de Front-End, HTML de um lado e CSS do outro. E assim por diante. Neste aspecto, o do Vim e do Atom empatam porque eu posso ficar fazendo splits de cada pane invidualmente em qualquer direçao. O do Sublime Text é funcional mas ele tem layouts pré-definidos e não dá pra splitar além, o que eu não gosto.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/451/Screen_Shot_2014-07-31_at_19.43.42.png" alt="Atom Split"  loading="lazy" />
<img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/450/Screen_Shot_2014-07-31_at_19.43.17.png" alt="Sublime Grid Layout"  loading="lazy" />
<img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/449/Screen_Shot_2014-07-31_at_19.42.45.png" alt="Vim Split"  loading="lazy" /></p>
<p>Outras coisas que facilitam incluem funcionalidades como &ldquo;Code Folding&rdquo; para esconder blocos de código, como um método. Textmate tornou isso prático e os outros copiaram o recurso. É útil, mas cuidado para não virar uma &ldquo;muleta&rdquo; para arquivos que, na verdade, já deveriam ter sido refatorados em arquivos menores. Ou então métodos gigantes, que já deveriam ter sido refatorados em métodos menores.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/452/Screen_Shot_2014-07-31_at_19.46.24.png" alt="Atom Code Folding"  loading="lazy" /></p>
<p>Praticamente tudo isso também existe nos editores de IDEs como Eclipse ou NetBeans. Mesmo XCode tem boa parte disso. O pior de todos é o editor do Visual Studio (que verdade seja dita, vem evoluindo até que bem nos últimos anos, e fica melhor se adicionar o ReSharper) e outros editores simples de texto de Windows como UltraEdit ou Notepad++. Em Windows, se possível, use Sublime Text ou Atom, ou mesmo gVIM mas aí não vai ter YADR e outras ferramentas de linha de comando, como explico nas seções abaixo.</p>
<p>Finalmente, outra parte extremamente importante de todos esses editores: eles precisam ser rápidos. O suficiente para eu chamar da linha de comando (o Textmate tem o comando &ldquo;mate .&rdquo;, o Sublime Text tem o &ldquo;subl .&rdquo;, o Atom tem o &ldquo;atom .&rdquo; e o MacVim, obviamente &ldquo;mvim&rdquo;) e eles abrirem quase instantaneamente. Uma IDE pesada como Eclipse Kepler (com plugins de Spring, etc) abre - no meu Macbook Pro com SSD - em mais de <strong>17 segundos</strong>!! O Atom, que eu considero o mais lento, abre em menos de 3 segundos. Todos os outros abrem em <strong>1 segundo</strong> ou menos. Faz muita diferença em como eu vou trabalhar.</p>
<p>Cada um dos editores tem dezenas de outras funcionalidades que vão te surpreender, então não deixe de ler a documentação de cada um deles. Em particular, no caso do Vim, você pode ler o README que normalmente cada bundle tem (procure a partir do diretório &ldquo;.vim/bundle&rdquo;). No caso do Sublime Text você tem o <a href="https://sublime-text-unofficial-documentation.readthedocs.org/en/latest/"target="_blank" rel="noopener">Unofficial Documentation</a>. O Atom é a <a href="https://atom.io/docs/latest/"target="_blank" rel="noopener">documentação</a> do próprio site. Aliás, note que tem como converter bundles de Textmate para Atom.</p>
<h2>Pesquisa em Múltiplos Arquivos: Grep, Ack, Ag?<span class="hx:absolute hx:-mt-20" id="pesquisa-em-múltiplos-arquivos-grep-ack-ag"></span>
    <a href="#pesquisa-em-m%c3%baltiplos-arquivos-grep-ack-ag" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>O maior ponto fraco do Textmate é seu Find em múltiplos arquivos que, se esbarrar num log gigante, vai travar tudo. Substitua para usar o Ag. Em Mac, use Homebrew para instalar o <a href="https://github.com/ggreer/the_silver_searcher"target="_blank" rel="noopener">the_silver_searcher</a>. Agora você precisa instalar o <a href="https://github.com/ggreer/AckMate"target="_blank" rel="noopener">AckMate</a> no Textmate e substituir pelo Ag:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>rm ~/Library/Application Support/TextMate/PlugIns/AckMate.tmplugin/Contents/Resources/ackmate_ack
ln -s /usr/local/bin/ag &#34;~/Library/Application Support/TextMate/PlugIns/AckMate.tmplugin/Contents/Resources/ackmate_ack</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Para quem nunca ouviu falar disso, vamos resumir: todo mundo conhece o bom e velho Grep para fazer pesquisas usando regular expressions. Depois dele surgiu o Ack, como uma opção mais eficiente e veloz. E depois dele veio o Ag, como uma opção ainda melhor. O artigo <a href="http://geoff.greer.fm/2011/12/27/the-silver-searcher-better-than-ack/"target="_blank" rel="noopener">&ldquo;The Silver Searcher: Better than Ack&rdquo;</a> explica um pouco disso, mas resumindo:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>% du -sh
250M    .

% time grep -r -i SOLR ~/cloudkick/reach | wc -l
     617
11.06s user 0.81s system 96% cpu 12.261 total

% time ack -i SOLR ~/cloudkick/reach | wc -l
     488
2.87s user 0.78s system 97% cpu 3.750 total

% time ag -i SOLR ~/cloudkick/reach | wc -l
     573
1.00s user 0.51s system 95% cpu 1.587 total</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>11 segundos no Grep. Quase 3 segundos no Ack. 1 segundo no Ag. Na dúvida, escolha sempre Ag!</p>
<h2>Windows, porque não usar<span class="hx:absolute hx:-mt-20" id="windows-porque-não-usar"></span>
    <a href="#windows-porque-n%c3%a3o-usar" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Para quem é de Windows, existe um <a href="http://jaxbot.me/articles/ag_the_silver_searcher_for_windows_6_8_2013"target="_blank" rel="noopener">port to the silver searcher</a>. E aqui vem um ponto importante: não use Windows se não for necessário, como máquina de desenvolvimento de qualquer coisa que não seja Java ou .Net. Sim, PHP uma parte funciona. Python, Perl, uma parte funciona. Até <a href="http://rubyinstaller.org"target="_blank" rel="noopener">Ruby</a>, uma parte funciona. E sempre vai ser assim: uma parte, nunca 100%.</p>
<p>.NET é óbvio que funciona porque foi feito para Windows. Apesar de existir uma máquina virtual CLR, uma parte significativa são chamadas a subsistemas de baixo nível do sistema operacional usando pontes como PInvoke (Platform Invocation Services, para permitir código gerenciado chamar código não-gerenciado ou não-seguro). No caso de Java, a filosofia era 100% Pure Java, com o tempo surgiram adaptações usando JNI (Java Native Interface, essencialmente algo como PInvoke no .NET), mas no caso de Java preferencialmente tudo é feito para rodar dentro da JVM. Mesmo scripts de linha de comando são sempre chamadas <tt>java -jar xxx.jar</tt> por dentro.</p>
<p>Perl, PHP, Ruby, Python, e outros interpretadores que nasceram no ambiente Unix dependem de APIs <a href="http://stackoverflow.com/questions/1780599/i-never-really-understood-what-is-posix"target="_blank" rel="noopener">POSIX</a> por baixo. Ditribuições GNU/Linux e BSD/Darwin (OS X) implementam essa família de padrões e seguem a filosofia UNIX. O Windows, obviamente, não é UNIX e muito menos POSIX. Existe, porém, como ter o sub-sistema POSIX sobre o Windows. É isso que são os projetos <a href="https://www.cygwin.com"target="_blank" rel="noopener">Cygwin</a> e <a href="http://www.microsoft.com/en-us/download/details.aspx?id=274"target="_blank" rel="noopener">Windows Services for UNIX</a>. Apesar do grande esforço desses projetos em tentar prover as mesmas APIs POSIX, existem hoje diferenças nos ambientes Linux e Darwin que eles não cobrem, e por isso muita coisa ainda vai quebrar. É um trabalho homérico tentar fazer o Windows ficar compatível com um ambiente UNIX inteiro.</p>
<p>Por isso, a melhor forma de desenvolver com plataformas que dependem de UNIX é usar máquinas virtuais como VirtualBox, com a ajuda do bom e velho Vagrant, como falei no <a href="http://www.akitaonrails.com/2014/07/28/small-bites-vagrant-ubuntu-14-04-chef-solo#.U9q91IBdVqc"target="_blank" rel="noopener">post anterior</a>.</p>
<p><em>&ldquo;Mas eu desenvolvo PHP e Python no Windows sem problemas!&rdquo;</em></p>
<p>É verdade, mas você nunca vai poder usar tudo dessas plataformas, sempre vai precisar existir gambiarras pra fazer uma ferramenta que é simples no UNIX funcionar no Windows. Veja o <a href="https://github.com/composer/windows-setup"target="_blank" rel="noopener">PHP Composer Installer</a>, precisa trazer embutido o Git, Msys, Cygwin e tudo mais. Como no caso particular do PHP, uma parcela considerável de todos os desenvolvedores usam Windows, então projetos de Installers como esse ainda funcionam razoavelmente, mas é uma considerável redundância de esforços. Sempre vai ter conflitos de versões mais novas com installers velhos e toda a velha dor de cabeça de sempre. Como instala num Linux? Simples, um comando:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>curl -sS https://getcomposer.org/installer | php</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>Vamos instalar o PIP do Python no Windows? Não é necessariamente trivial, como esta <a href="http://stackoverflow.com/questions/4750806/how-to-install-pip-on-windows"target="_blank" rel="noopener">thread no StackOverflow</a> indica. E depois você precisa lidar com o <a href="http://stackoverflow.com/questions/3271590/can-i-install-python-windows-packages-into-virtualenvs"target="_blank" rel="noopener">Virtualenv</a> no Windows. No Ubuntu?</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><pre><code>sudo apt-get install python-pip
sudo apt-get install python-virtualenv</code></pre></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>&rsquo;nuff said.</p>
<h2>Atalhos, Shortcuts, Cheat sheets<span class="hx:absolute hx:-mt-20" id="atalhos-shortcuts-cheat-sheets"></span>
    <a href="#atalhos-shortcuts-cheat-sheets" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Se você está acostumado a um conjunto de keybindings, se adaptar a outro é uma dor de cabeça mesmo. Uma coisa que muitos tentam fazer é adaptar o editor às keybindings que estava acostumado, tipo tentar simular <a href="https://github.com/ebi/Sublime-TextMate-Shortcuts"target="_blank" rel="noopener">combinações do Textmate no Sublime</a>. Recomendação: não faça isso. Você precisa lembrar de meia dúzia de combinações principais, o resto é secundário e via menu você relembra.</p>
<p>Para ajudar, aqui vão alguns cheatsheets que podem ajudar (principalmente se você está tentando ainda se adaptar a Vim):</p>
<ul>
<li><a href="http://vim.rtorr.com/"target="_blank" rel="noopener">Vim Cheat sheet</a></li>
<li><a href="http://www.cheatography.com/martinprins/cheat-sheets/sublime-text-3-osx/"target="_blank" rel="noopener">Sublime Text 3 Cheat sheet</a></li>
<li><a href="https://bugsnag.com/blog/atom-editor-cheat-sheet"target="_blank" rel="noopener">Atom Cheat sheet</a></li>
<li><a href="http://g-design.net/textmate.pdf"target="_blank" rel="noopener">Textmate Cheat sheet</a></li>
</ul>
<h2>Por que Ruby (ou Python, ou Perl, etc) não precisam de IDE?<span class="hx:absolute hx:-mt-20" id="por-que-ruby-ou-python-ou-perl-etc-não-precisam-de-ide"></span>
    <a href="#por-que-ruby-ou-python-ou-perl-etc-n%c3%a3o-precisam-de-ide" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><em>&ldquo;O que é uma IDE?&rdquo;</em> Tecnicamente &ldquo;IDE&rdquo; significa <a href="http://en.wikipedia.org/wiki/Integrated_development_environment"target="_blank" rel="noopener">Integrated Development Environment</a>. Significa um editor de textos, automatização de compilação e debugging.</p>
<p>No mundo Ruby não há preocupação sobre compilação porque salvo os raros casos onde você está trabalhando com uma extensão em C, não há &ldquo;compilação&rdquo;. No mundo Rails, em particular, temos preocupação de deployment. Pra maioria de nós, significa um mero <tt>git push heroku master</tt> e boom.</p>
<p>Debugging é outra tarefa que não nos preocupa muito, ou pelo menos não deveria. Se precisarmos muito, basta adicionar a gem <a href="https://github.com/rweng/pry-rails"target="_blank" rel="noopener">pry-rails</a> ao seu projeto e colocar a linha <tt>binding.pry</tt> onde quer debugar. O servidor web vai parar nessa linha no seu console e você pode debugar de lá. Mas como você deveria estar desenvolvendo orientado a testes (Test-First/TDD ou Test-After, não importa, apenas teste!), debugging perde importância. Front-end precisa de debugging visual e todo navegador decente (Safari, Chrome e Firefox) tem excelente debuggers e <a href="https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptual/Safari_Developer_Guide/GettingStarted/GettingStarted.html"target="_blank" rel="noopener">web inspectors</a>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/453/Screen_Shot_2014-07-31_at_19.49.15.png" alt="Terminal oriented development"  loading="lazy" /></p>
<p>Isso nos deixa somente com um aspecto importante: o editor de textos! Por isso que no mundo Rails não falamos em &ldquo;IDE&rdquo;, e sim em editores de texto. Mas quem vem de uma IDE como Eclipse ou NetBeans para Java, ou mesmo XCode para Objective-C sempre pensa em uma e apenas uma coisa: &ldquo;auto-complete&rdquo; e ficam pasmos que no mundo Ruby ou não usamos ou o auto complete é bem simples.</p>
<p>Para entender isso precisamos de perspectiva. Vamos pensar em coleções. Em Ruby, temos Array e Hash. Em Java precisamos escolher entre: Vector, HashTable, List, ArrayList, LinkedList, Queue, ArrayDeque, PriorityQueue, Deque, BlockingQueue, Set, HashSet, LinkedHashSet, TreeSet, HashMap, TreeMap, SortedSet, NavigableSet, Map, LinkedHashMap, NavigableMap. Pelo menos 21 classes (e eu acho que não listei todas!) E se incluirmos o Apache Commons, temos mais: ArrayStack, FastArrayList, BinaryHeap, BoundedFifoBuffer, UnboundedFifoBuffer, BeanMap, DoubleOrderedMap, FastHashMap, MultiHashMap, ReferenceMap, FastTreeMap, ArrayEnumeration, ArrayIterator, BagUtils, BufferUtils, CollectionUtils, CursorableLinkedList, etc (essa é só metade da lista!)</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/454/Screen_Shot_2014-07-31_at_19.50.52.png" alt="Eclipse auto-complete"  loading="lazy" /></p>
<p>Isso deve dar uma perspectiva de porque não precisamos de &ldquo;auto-complete&rdquo;. Use ferramentas como o <a href="http://kapeli.com/dash"target="_blank" rel="noopener">Dash</a> para ter acesso à documentação (e que no caso do Vim, tem integração do tipo selecionar a palavra-chave no seu código, digitar o comando <a href="https://github.com/rizzatti/dash.vim"target="_blank" rel="noopener">&quot;:Dash&quot;</a> e ele vai abrir diretamente a documentação no Dash! Muito prático). Se não tem Mac e usa uma distro Linux ou até mesmo Windows (!!), talvez o <a href="http://zealdocs.org/"target="_blank" rel="noopener">Zeal</a> seja a melhor opção para documentação offline.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/455/Screen_Shot_2014-07-31_at_19.52.12.png" alt="Dash"  loading="lazy" /></p>
<p>E o mundo iOS/OS X com framework Cocoa não é muito diferente. Bem menos opções do que em Java, mas ainda muito mais do que Ruby.</p>
<p>No caso de Objective-C ou o novo Swift, o XCode continua sendo um IDE competente. Ele ainda tem crashes bizarros e é um pouco pesado mas ter acesso a ferramentas como Interface Builder, Instruments, Simulator, etc faz parte do workflow de desenvolvimento de aplicações Desktop ou Mobile. No caso de Windows, fazer aplicações para desktop também exige um Visual Studio. Fazer Swing com Java sem alguns bons plugins e debugging também é complicado, então realmente use Eclipse ou NetBeans.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/456/Screen_Shot_2014-07-31_at_19.54.09.png" alt="Xcode"  loading="lazy" /></p>
<p>Aliás, um Eclipse ou NetBeans demoram porque literalmente rodam sobre uma &ldquo;máquina virtual&rdquo; (que é leve, claro), que é a JVM. Nesse conceito, não é um grande salto rodar suas outras ferramentas de desenvolvimento de outra máquina virtual (mais pesada, sim) que é um Linux dentro de um Virtualbox. Ou se sua máquina de desenvolvimento já é Linux, rodar Vagrant com LXC.</p>
<p>O <a href="http://www.jetbrains.com/ruby/"target="_blank" rel="noopener">RubyMine</a> assim como outras IDEs, foge da minha opinião deste post de usar a combinação &ldquo;Bom Editor&rdquo; + &ldquo;Terminal&rdquo; + &ldquo;Vagrant&rdquo; como fluxo de trabalho para Web. Mas se quiser muito tentar uma IDE para Ruby, esta é obviamente a melhor opção. Em particular, diferente do Eclipse, ele é consideravelmente mais rápido e responsivo. Ele quase empata com o Atom.io em tempo de abertura, levando perto de 4 segundos. O Atom leva perto de 3 segundos e o Eclipse leva mais de 17 segundos. Quase entra na categoria de editores de texto que você pode abrir rápido. Por isso mesmo é uma boa opção.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/assets/image_asset/image/457/Screen_Shot_2014-08-01_at_14.42.27.png" alt="RubyMine"  loading="lazy" /></p>
<p>E aí, quais dicas legais vocês tem para cada um dos editores mostrados? Não deixem de colocar nos comentários!</p>
]]></content:encoded><category>ferramentas-de-desenvolvimento</category><category>produtividade</category></item><item><title>[Off-Topic] Restrições são libertadoras: menos é mais</title><link>https://akitaonrails.github.io/2013/04/01/off-topic-restricoes-sao-libertadoras-menos-e-mais/</link><guid isPermaLink="true">https://akitaonrails.github.io/2013/04/01/off-topic-restricoes-sao-libertadoras-menos-e-mais/</guid><pubDate>Mon, 01 Apr 2013 06:19:00 -0300</pubDate><description>&lt;p&gt;Publicado pela 1a vez em &lt;a href="http://web.archive.org/web/20150404175715/http://startupi.com.br/2013/04/restricoes-sao-libertadoras-menos-e-mais/"target="_blank" rel="noopener"&gt;2013-04-01T09:19:10+00:00&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;O título deste artigo é uma frase repetida inúmeras vezes, mas de tempos em tempos vale recuperar seu significado, especialmente neste novo momento de excitação em torno de startups.&lt;/p&gt;
&lt;p&gt;Muita gente acredita que poderia realizar muito, mas se convence de que as inúmeras restrições ao redor a condenam ao fracasso. Se tivesse “mais” dinheiro, “mais” tempo, “mais” reconhecimento, “mais” alguma coisa, só então realizaria seu “potencial escondido”. O fracasso passa a ser culpa do mercado, da sociedade e de tudo que limita esse potencial.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Publicado pela 1a vez em <a href="http://web.archive.org/web/20150404175715/http://startupi.com.br/2013/04/restricoes-sao-libertadoras-menos-e-mais/"target="_blank" rel="noopener">2013-04-01T09:19:10+00:00</a></p>
<p>O título deste artigo é uma frase repetida inúmeras vezes, mas de tempos em tempos vale recuperar seu significado, especialmente neste novo momento de excitação em torno de startups.</p>
<p>Muita gente acredita que poderia realizar muito, mas se convence de que as inúmeras restrições ao redor a condenam ao fracasso. Se tivesse “mais” dinheiro, “mais” tempo, “mais” reconhecimento, “mais” alguma coisa, só então realizaria seu “potencial escondido”. O fracasso passa a ser culpa do mercado, da sociedade e de tudo que limita esse potencial.</p>
<p>Por isso existe um enorme rebanho de pessoas que gostariam de ser “empreendedores” e gastam o tempo criando “sales pitches” para seduzir fundos de investimento, investidores anjos ou qualquer um com recursos para lhe dar esse “mais”.</p>
<p>E não falo só de quem quer empreender, mas de qualquer profissional. Estão todos convencidos de que, se a empresa lhe pagasse “mais”, ele se sentiria motivado a produzir mais. Se o projeto tivesse “mais” tempo, ele entregaria dentro do prazo. Se tivesse “mais” liberdade, entregaria melhor.</p>
<p>Em resumo: <em>“Se me dessem mais, eu faria mais, afinal liberdade é ter todas as escolhas possíveis”</em>.</p>
<blockquote>
  <p>Quero argumentar que o oposto é a verdade. Até certo limite, são as restrições que levam à inovação, e não a abundância. A abundância leva à zona de conforto, e não existe motivação para tomar qualquer ação quando você já está confortável.</p>

</blockquote>
<ul>
<li>Por que alguém inventaria maneiras mais eficientes quando se tem tempo infinito?</li>
<li>Por que alguém inventaria maneiras mais baratas quando se tem dinheiro infinito?</li>
<li>Para quê ter criatividade para inovar quando não existe essa necessidade?</li>
</ul>


<div class="embed-container">
  <iframe
    src="https://www.youtube.com/embed/EUXnJraKM3k"
    title="YouTube video player"
    frameborder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
    referrerpolicy="strict-origin-when-cross-origin"
    allowfullscreen>
  </iframe>
</div>

<p>A resposta é simples. Abundância significa ausência da necessidade de fazer escolhas, e quem não precisa escolher também não precisa priorizar. A priorização é consequência de se viver sob restrições.</p>
<p>Quando algo “não é possível” dentro dessas restrições pelas “formas convencionais”, é aí que alguém se vê forçado a ser criativo, a abandonar o caminho batido e produzir a real “inovação”. Inovar é o que torna o impossível de hoje possível amanhã.</p>
<ul>
<li><em>“É impossível atravessar o mundo em 24 horas”</em>. Seria, antes do século XX, quando a forma mais eficiente de transporte era o navio.</li>
<li><em>“É impossível continuar alimentando todas as pessoas do planeta”</em>. Seria, se não tivéssemos avanços de agricultura e genética que permitem extrair o máximo de cada área cultivável.</li>
<li><em>“É impossível ir até a Lua”</em>. Acho que vocês entenderam.</li>
</ul>
<p>Quando você tem zero reais no bolso e nenhum lugar para captar dinheiro, reclamar do mundo injusto não muda nada. A saída vem por outros caminhos, com as próprias pernas. Você vai ter que convencer parceiros, priorizar, negociar, barganhar, tomar escolhas difíceis. É assim que a restrição libera e força a criatividade a inovar em outras direções.</p>
<p>Se ainda não acredita vamos a alguns extremos:</p>
<ul>
<li>Toda a riquíssima literatura ocidental dos últimos séculos é descrita com uma combinação de 26 letras e 10 números do alfabeto. Shakespeare não seria melhor necessariamente se existissem mais letras no alfabeto.</li>
<li>Toda a infinidade de números podem ser expressados com meros 10 símbolos numéricos. Paul Erdős não faria matemática melhor com mais formas de notação numérica.</li>
<li>Toda a diversidade dos seres vivos que existem hoje, já existiram e ainda estão por vir pode ser resumida na informação do DNA, codificada com apenas 4 bases, adenina, citosina, guanina e timina. 1% de diferença nesse DNA é o suficiente para criar espécies tão diferentes quanto o macaco e nós.</li>
</ul>
<p>Claro, um tweet tem apenas 140 caracteres. É uma restrição que se levarmos a sério nos leva a ser concisos e dizer o absolutamente necessário que cabe nesse pequeno espaço, e muitos conseguem criar memes inteiros nesse espaço. Não é diferente de um Haiku, uma forma literária de 17 sílabas ou menos para também capturar o essencial no momento.</p>
<p>Em design falamos o tempo todo de minimalismo, de que “menos é mais”, onde os exemplos de excelência vêm dos reconhecidos designs industriais de Jony Ive na Apple.</p>
<p>Ainda em design, outro nome reconhecido, John Maeda, diz que <em>“na área de design existe a crença de que com mais restrições, soluções melhores são reveladas”</em> e que “urgência e espírito criativo andam de mãos dadas.”</p>
<p>No mundo das apresentações, palestras e slides temos o famoso “Presentation Zen” de Garr Reynolds. Ele ensina a limitar as ideias ao mínimo possível, até chegar à menor narrativa e a slides simples que, no limite, se restringem a uma única imagem ou uma única palavra por slide. Lembram das apresentações de Steve Jobs? Mesmo conceito. A abundância leva aos horríveis Powerpoints poluídos de informação que, paradoxalmente, transmitem pouco.</p>
<p>Ou o que dá para fazer a partir de meros dois dígitos, zero e um? Um sistema binário que é o DNA por trás de todo o mundo digital e da Internet que conecta bilhões de pessoas.</p>
<p>Podemos extrapolar em muitos outros exemplos, mas o ponto central é que buscar abundância com o pretexto de finalmente executar suas ideias é uma busca sem sentido. As soluções aparecem nas limitações. Quem souber encarar as restrições ao redor procurando saídas criativas é quem inova primeiro, de verdade.</p>
<p>Você acha que precisa de “mais” para fazer “mais”? Minha conclusão é que se com pouco não se faz nada, com muito vai se fazer menos ainda.</p>
<blockquote>
  <p>Inovar é a arte de priorizar e ser criativo, motivado pelas constantes restrições.</p>

</blockquote>
]]></content:encoded><category>filosofia</category><category>produtividade</category><category>off-topic</category></item><item><title>[Off-Topic] Comprei meu primeiro Mac, e agora? (Edição 2012)</title><link>https://akitaonrails.github.io/2012/04/20/off-topic-comprei-meu-primeiro-mac-e-agora-edicao-2012/</link><guid isPermaLink="true">https://akitaonrails.github.io/2012/04/20/off-topic-comprei-meu-primeiro-mac-e-agora-edicao-2012/</guid><pubDate>Fri, 20 Apr 2012 19:15:46 -0300</pubDate><description>&lt;p&gt;Um dos artigos mais lidos do meu blog é o &lt;a href="http://akitaonrails.com/2009/07/19/off-topic-comprei-meu-primeiro-mac-e-agora"target="_blank" rel="noopener"&gt;Comprei meu primeiro Mac, e agora?&lt;/a&gt;, que escrevi em Julho de 2009. Já atualizei ele uma vez e sempre achei que precisava atualizar de novo. O artigo inteiro, revisado, está no link acima. Para quem já leu, a seguir está só o que acrescentei hoje.&lt;/p&gt;
&lt;p&gt;Se você tem outras boas dicas, comente para compartilhar com todos. O foco aqui são usuários normais e Power Users, já que bons desenvolvedores sabem encontrar seu caminho sozinhos. Serve também para aquele amigo não-desenvolvedor que comprou um Mac e fica te perturbando toda hora com &lt;em&gt;“como faz isso? como faz aquilo?”&lt;/em&gt;. Agora é só passar o link acima para o artigo inteiro :-)&lt;/p&gt;</description><content:encoded><![CDATA[<p>Um dos artigos mais lidos do meu blog é o <a href="http://akitaonrails.com/2009/07/19/off-topic-comprei-meu-primeiro-mac-e-agora"target="_blank" rel="noopener">Comprei meu primeiro Mac, e agora?</a>, que escrevi em Julho de 2009. Já atualizei ele uma vez e sempre achei que precisava atualizar de novo. O artigo inteiro, revisado, está no link acima. Para quem já leu, a seguir está só o que acrescentei hoje.</p>
<p>Se você tem outras boas dicas, comente para compartilhar com todos. O foco aqui são usuários normais e Power Users, já que bons desenvolvedores sabem encontrar seu caminho sozinhos. Serve também para aquele amigo não-desenvolvedor que comprou um Mac e fica te perturbando toda hora com <em>“como faz isso? como faz aquilo?”</em>. Agora é só passar o link acima para o artigo inteiro :-)</p>
<p>Aproveitem!</p>
<h2>Edição 2012<span class="hx:absolute hx:-mt-20" id="edição-2012"></span>
    <a href="#edi%c3%a7%c3%a3o-2012" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>Assim como no Windows e em outros sistemas, no Mac a velocidade de repetição do teclado vem configurada meio lenta por padrão. Abra qualquer editor de texto, use as setas para posicionar o cursor e vai notar como é demorado. Eu prefiro a velocidade no máximo: vá em “System Preferences, opção Keyboard”, deixe “Key Repeat” em “Fast” e “Delay Until Repeat” em “Short”. Você vai me agradecer:</li>
</ul>
<p><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/Screen%20Shot%202012-04-20%20at%206.02.32%20PM_original.png?1334956028" alt=""  loading="lazy" /></p>
<ul>
<li>Antes do Lion existia uma função para encriptar seus arquivos em tempo real, chamada FileVault, e ela era ruim o suficiente para ser ignorada. A partir do Lion surgiu o <strong>FileVault 2</strong>, completamente diferente e bom o bastante para virar item obrigatório. Abra “System Preferences, Security &amp; Privacy”, aba “FileVault”, e habilite a encriptação total do seu HD. <strong>MUITO CUIDADO:</strong> ele vai gerar chaves de recuperação que permitem descriptografar os dados. Anote num local seguro e <strong>nunca perca</strong>. Uma dica é pegar seu iPhone ou qualquer smartphone com câmera e fotografar a tela quando ele exibir as chaves.</li>
</ul>
<p><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/Screen%20Shot%202012-04-20%20at%206.29.06%20PM_original.png?1334957491" alt=""  loading="lazy" /></p>
<ul>
<li>A partir do Lion existe o <a href="http://web.archive.org/web/20120522082049/http://www.apple.com/br/macosx/whats-new/mission-control.html"target="_blank" rel="noopener">Mission Control</a>, que você ativa colocando quatro dedos no touchpad e arrastando pra cima. Ele é o substituto do antigo Exposé e fica bem prático quando você se acostuma. Aplicativos “maximizados” viram seu próprio “Space” paralelo, e você navega entre eles arrastando três dedos no touchpad para a direita ou para a esquerda. O incômodo é a configuração padrão: os Spaces se rearranjam dinamicamente conforme o uso. Eu gosto de manter meus aplicativos e desktops sempre na mesma posição, então desabilito isso em “System Preferences, opção Mission Control”, na opção “Automatically rearrange spaces based on most recent use” (você ainda pode arrastar os Spaces para a ordem que preferir).</li>
</ul>
<p><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/Screen%20Shot%202012-04-20%20at%205.57.35%20PM_original.png?1334955644" alt=""  loading="lazy" /></p>
<ul>
<li>O Lion também mudou bastante a forma de salvar arquivos, com o novo recurso de “Auto Save”. Se acontecer um crash inesperado, se você precisar desligar a máquina no braço ou qualquer situação drástica dessas, não perde o que estava editando, porque o sistema salva sozinho. O incômodo é que o arquivo às vezes recebe um “Lock” que impede a edição. Dá para desbloquear manualmente, mas prefiro desligar isso em “System Preferences, Time Machine”, botão “options”, opção “Lock documents”. Aproveite a foto abaixo para ver onde fica e também o que eu coloco na lista de exclusão do Time Machine, coisas que prefiro não incluir no backup por não serem importantes (Software Images) ou por preferir fazer o backup na mão (iPhoto).</li>
</ul>
<p><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/Screen%20Shot%202012-04-20%20at%206.38.10%20PM_original.png?1334958088" alt=""  loading="lazy" /></p>
<ul>
<li>
<p>Ainda sobre a forma como o Lion lida com documentos e versões: nos aplicativos novos apareceu a opção “Save a version”, que grava momentos no tempo caso você precise voltar e recuperar algo feito antes. Pense nisso como um mini Time Machine, um backup granulado. Em compensação, o antigo “Save As”, que salvava o mesmo arquivo com outro nome, sumiu. Agora a operação é mais chata: primeiro “Duplicate” e depois “Save” (tudo no menu principal “File”) para gravar com outro nome. É chato no começo, mas vira rotina rápido.</p>
</li>
<li>
<p>O <a href="https://github.com/mxcl/homebrew"target="_blank" rel="noopener">HomeBrew</a> é o melhor instalador de softwares de código-livre como MySQL, PostgreSQL, Redis, Git, Android SDK e muito mais. Em alguns casos ele baixa direto o binário pra Mac, mas na maioria das vezes pega o código-fonte, aplica os patches necessários e compila. Para isso você precisa de compiladores e outras ferramentas, e a forma mais simples é baixar o XCode pela <strong>App Store</strong>. Esta dica é mais para desenvolvedores; se você não for, pode ignorar.</p>
</li>
<li>
<p>O Lion é a versão mais prática na hora de se recuperar de desastres. Acabou o DVD de boot: agora todo Mac tem uma partição escondida com o instalador, caso você precise reinstalar, checar discos e coisas assim. Basta dar boot segurando (Command-R) ⌘-R, ou segurar a tecla (Option) ⌥ durante o boot para abrir o menu de partições disponíveis e escolher “Recovery HD”.</p>
</li>
</ul>
<p><a href="http://www.apple.com/macosx/recovery/"target="_blank" rel="noopener"><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/commandr_original.jpg?1334958455" alt=""  loading="lazy" /></a></p>
<h3>Aplicações<span class="hx:absolute hx:-mt-20" id="aplicações"></span>
    <a href="#aplica%c3%a7%c3%b5es" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Alguns dos aplicativos a seguir estão no Mac App Store, e recomendo sempre procurar por lá primeiro. Quando não estiverem, use os links e baixe manualmente. No fim da seção tem uma dica para manter tudo sempre atualizado.</p>
<ul>
<li>
<p>Se tiver um iPad, dá para usá-lo como um segundo monitor ligado ao Mac via Wi-Fi (os dois precisam estar na mesma rede). Para isso, compre o programa <a href="http://web.archive.org/web/20120420081551/http://avatron.com/apps/air-display"target="_blank" rel="noopener">Air Display</a>.</p>
</li>
<li>
<p>Se tiver um novo Apple TV (o modelo pequeno preto), dá para espelhar a tela do iPhone 4S, iPad 2 ou superior via Wi-Fi usando o <a href="http://support.apple.com/kb/HT4437?viewlocale=pt_PT&amp;locale=pt_PT"target="_blank" rel="noopener">Air Play</a> do iOS. A próxima versão do Mac, o Mountain Lion, vai permitir fazer o mesmo a partir do Mac. Até lá, você ainda pode espelhar o Mac numa HDTV via Apple TV comprando o <a href="http://airparrot.com/"target="_blank" rel="noopener">Air Parrot</a>. É a forma mais simples de assistir a filmes e vídeos do seu Mac direto na TV.</p>
</li>
<li>
<p>Eu gosto muito de ler os vários feeds RSS e Atom cadastrados na minha conta do Google Reader, e o melhor aplicativo para Mac e iOS é o <a href="http://reederapp.com/mac/"target="_blank" rel="noopener">Reeder</a>.</p>
</li>
<li>
<p>Com tanto conteúdo na internet, você baixa muita coisa e nem sempre sabe quais arquivos estão consumindo mais espaço em disco. Para encontrá-los com facilidade (dica: na maioria das vezes são os vídeo podcasts no iTunes), existem ótimos aplicativos pagos como o <a href="http://www.daisydiskapp.com/"target="_blank" rel="noopener">DaisyDisk</a>, mas eu ainda gosto do gratuito <a href="http://grandperspectiv.sourceforge.net/"target="_blank" rel="noopener">GrandPerspective</a>.</p>
</li>
<li>
<p>O OS X sozinho dá conta de formatos comprimidos como zip e gz. Para descompactar formatos mais chatos como 7-zip e rar, instale o <a href="http://wakaba.c3.cx/s/apps/unarchiver.html"target="_blank" rel="noopener">The Unarchiver</a>.</p>
</li>
<li>
<p>A última dica é criar uma conta no <a href="http://www.macupdate.com/"target="_blank" rel="noopener">MacUpdate</a> e baixar o <a href="http://www.macupdate.com/desktop/"target="_blank" rel="noopener">MacUpdate Desktop</a>. De vez em quando abra o programa e ele mostra tudo que está desatualizado na máquina, deixando você escolher o que quer atualizar:</p>
</li>
</ul>
<p><img src="http://s3.amazonaws.com/akitaonrails/assets/2012/4/20/Screen%20Shot%202012-04-20%20at%206.14.40%20PM_original.png?1334956624" alt=""  loading="lazy" /></p>
]]></content:encoded><category>apple</category><category>produtividade</category><category>tutoriais</category><category>off-topic</category></item><item><title>Primeiro Aniversário</title><link>https://akitaonrails.github.io/2007/06/30/primeiro-aniversario/</link><guid isPermaLink="true">https://akitaonrails.github.io/2007/06/30/primeiro-aniversario/</guid><pubDate>Sat, 30 Jun 2007 15:35:00 -0300</pubDate><description>&lt;p&gt;Quase me esqueci, ontem, dia 29 de junho, não foi somente o “iPhone Day”, “iDay” ou “iFriday” como eu já postei. Foi também meu primeiro aniversário de um mês trabalhando para a Surgeworks. Acho que é hora de um feedback aos leitores deste blog. Alguns devem estar curiosos.&lt;/p&gt;
&lt;p&gt;Muitos de vocês devem ter lido meu post &lt;a href="http://www.akitaonrails.com/articles/2007/06/19/um-desabafo-parte-ii"target="_blank" rel="noopener"&gt;Um Desabafo, Parte II&lt;/a&gt;. Pois bem, trabalhar na Surgeworks, por enquanto, tem sido exatamente o oposto: meus chefes imediatos, Carl Youngblood, Dane Falkner, assim como meus colegas italianos como Mauro Dalu, Enrico Teotti, meus colegas indianos Pradeep e Naveen, e vários outros como Lauree Roberts, Brett Rasmussen, todos têm sido muito amigáveis, receptivos e excelentes colegas. Não conheci ninguém lá ainda que eu estranhasse ou algo parecido. Muito pelo contrário, apesar da distância temos nos comunicado via e-mail, IM, o tempo todo, todos os dias. Todos dão sugestões, temos boas discussões técnicas, e normalmente conseguimos chegar em bom consenso.&lt;/p&gt;</description><content:encoded><![CDATA[<p>Quase me esqueci, ontem, dia 29 de junho, não foi somente o “iPhone Day”, “iDay” ou “iFriday” como eu já postei. Foi também meu primeiro aniversário de um mês trabalhando para a Surgeworks. Acho que é hora de um feedback aos leitores deste blog. Alguns devem estar curiosos.</p>
<p>Muitos de vocês devem ter lido meu post <a href="http://www.akitaonrails.com/articles/2007/06/19/um-desabafo-parte-ii"target="_blank" rel="noopener">Um Desabafo, Parte II</a>. Pois bem, trabalhar na Surgeworks, por enquanto, tem sido exatamente o oposto: meus chefes imediatos, Carl Youngblood, Dane Falkner, assim como meus colegas italianos como Mauro Dalu, Enrico Teotti, meus colegas indianos Pradeep e Naveen, e vários outros como Lauree Roberts, Brett Rasmussen, todos têm sido muito amigáveis, receptivos e excelentes colegas. Não conheci ninguém lá ainda que eu estranhasse ou algo parecido. Muito pelo contrário, apesar da distância temos nos comunicado via e-mail, IM, o tempo todo, todos os dias. Todos dão sugestões, temos boas discussões técnicas, e normalmente conseguimos chegar em bom consenso.</p>
<p>Já trabalhei em equipes assim antes, mas faz tempo. Durante os anos de 1997 a 2001, eu tive a felicidade de ter chefes com os quais eu podia discutir tecnicamente de igual para igual. Muito competentes, dinâmicos e que prezavam, acima de tudo, mais aprendizado, mais experiência. Eu cresci muito graças a eles. Arriscando esquecer alguns nomes, devo destacar Luli Radfahrer (antiga Kropki), Carlos Lima (STI, WebForce e agora iG), Bruno Mosconi (F/Nazca, agora Garage Interactive) e Ester Krivkin (antiga PSN.com, hoje TopTrends/CowParade). Mantenho contatos ainda com todos eles, com maior ou menor periodicidade.</p>
<p>Já no mundo de consultoria eu vivenciei os 5 anos de um período seco, de pouca evolução, pouca motivação. De fato me ajudou a fortalecer outros lados, a lidar com frustrações, a enfrentar problemas que não são seus, a encarar a falta de suporte de todos os lados. Felizmente pude trazer algumas boas soluções técnicas em várias ocasiões, mas não podia deixar de me sentir numa camisa de força. Meus clientes e meus chefes, na maioria das vezes, não chegavam aos pés dos meus amigos que listei acima. Muito pouco espaço para sugerir soluções criativas. Tive que enfrentar muito carreirista onde os objetivos eram diferentes dos meus: o meu sempre foi entregar a melhor solução nas melhores condições. Já os objetivos dos outros lados era simplesmente ter um pescoço de terceiro para torcer caso a coisa ficasse preta. Meu dia-a-dia era ficar sempre me defendendo pro-ativamente.</p>
<p>De repente, tenho uma volta ao passado, novamente estou num ambiente de confiança, onde se preza a qualidade nos projetos, onde a boa comunicação é uma rotina, não uma exceção. Devo dizer que é um grande choque. Claro, tive bons amigos que mantenho até hoje nesse período da consultoria, mas foi basicamente o oásis no meio do deserto (por mais clichê que isso soe).</p>
<p>Espero que tudo continue assim, pelo menos por mais algum tempo. Para mim é quase como tirar férias. E falando nisso, chego a outro ponto desse artigo: um pequeno desabafo pessoal. Trabalhar em casa, nas primeiras duas semanas, foi bastante empolgante. Não precisar mais pegar o trânsito caótico de São Paulo (onde eu perdia, pelo menos 2 horas por dia). Não precisar mais morrer assado no escritório. Não precisar mais encarar as mesmas caras feias e desmotivadas. Foi um sopro de ar fresco, sem dúvida.</p>
<p>Não estou dizendo que está ruim, muito pelo contrário. Trabalhar no meu espaço, no horário que quiser, no ritmo e na forma como quiser é bom. Mas nos últimos dias estou sofrendo uma angústia que imagino que outros que trabalham com home-office já devem ter sentido. Talvez a falta de pilares fixos de uma rotina como pegar o carro num determinado horário, sair para almoçar com as mesmas pessoas e nos mesmos lugares, todas essas referências sumiram. Estar olhando para um papel em branco é intimidante para qualquer um.</p>
<p>Eu imaginava que isso não foi acontecer, mas está acontecendo. O resultado é que eu estou me sentido extremamente improdutivo. Tenho pesquisado várias coisas diferentes, mas isso também tem dispersado minha atenção e está difícil focar em uma única tarefa. Quando você tem várias coisas que quer fazer ao mesmo tempo, fica sempre mais difícil terminar qualquer uma delas. Todo mundo sabe disso, eu sei disso, mas quando se encara o problema pela primeira vez a coisa muda de figura.</p>
<p>Nada disso, obviamente é um problema. É apenas uma fase que batizou os últimos dias desse primeiro mês. O que eu preciso fazer também é claro: voltar a ser mais produtivo. Preciso voltar a colocar minha cabeça no lugar, organizar minhas tarefas, minhas pesquisas pessoais, voltar a estabelecer referências mais fortes de horário, enfim, voltar a me disciplinar. Disciplina é uma palavra fácil de dizer e complicado de executar em mudanças drásticas de cenário. É quase como um choque térmico.</p>
<p>Felizmente consegui finalizar algumas tarefas para a Surgeworks, mas mesmo assim vou dormir com a sensação de que deveria ter feito muito mais, e não é porque estou sendo modesto, mas porque eu realmente deveria ter aproveitado melhor meu dia. Essa sensação me incomoda. Veremos como me saio nos próximos dias.</p>
]]></content:encoded><category>pessoal</category><category>carreira</category><category>produtividade</category></item><item><title>Off Topic: Seja Arrogante!</title><link>https://akitaonrails.github.io/2007/04/14/off-topic-seja-arrogante/</link><guid isPermaLink="true">https://akitaonrails.github.io/2007/04/14/off-topic-seja-arrogante/</guid><pubDate>Sat, 14 Apr 2007 13:19:00 -0300</pubDate><description>&lt;p&gt;Acho triste ver como as pessoas desperdiçam muito do que a comunidade mundial na Internet tem a oferecer. Eu sei, eu sei, é o inglês. Sempre o inglês.&lt;/p&gt;
&lt;p&gt;O tema de hoje começa com a dificuldade de aprender inglês. Vou divagar um bocado na minha própria experiência e tentar provocar vocês.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://akitaonrails.s3.amazonaws.com/files/america-790957.jpg" alt="" loading="lazy" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Não consigo ler inglês direito, por isso só leio livros traduzidos&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Não consigo ler inglês direito, por isso só leio sites nacionais&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Não consigo entender inglês direito, por isso só ouço programas em português&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Tenho preguiça de ler as legendas, por isso só assisto filme dublado&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Às vezes vejo por aí essas manifestações infantis de anti-americanismo, normalmente de garotos usando Nike, assistindo ESPN, comendo no McDonald’s e ouvindo Coldplay e Dream Theater. Penso com meus botões: &lt;em&gt;por que eu sinto, no meio de tanta fúria, uma ponta de &lt;strong&gt;inveja&lt;/strong&gt;, &lt;strong&gt;insegurança&lt;/strong&gt; e &lt;strong&gt;falta de auto-estima&lt;/strong&gt;?&lt;/em&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<p>Acho triste ver como as pessoas desperdiçam muito do que a comunidade mundial na Internet tem a oferecer. Eu sei, eu sei, é o inglês. Sempre o inglês.</p>
<p>O tema de hoje começa com a dificuldade de aprender inglês. Vou divagar um bocado na minha própria experiência e tentar provocar vocês.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/america-790957.jpg" alt=""  loading="lazy" /></p>
<ul>
<li><em>Não consigo ler inglês direito, por isso só leio livros traduzidos</em></li>
<li><em>Não consigo ler inglês direito, por isso só leio sites nacionais</em></li>
<li><em>Não consigo entender inglês direito, por isso só ouço programas em português</em></li>
<li><em>Tenho preguiça de ler as legendas, por isso só assisto filme dublado</em></li>
</ul>
<p>Às vezes vejo por aí essas manifestações infantis de anti-americanismo, normalmente de garotos usando Nike, assistindo ESPN, comendo no McDonald’s e ouvindo Coldplay e Dream Theater. Penso com meus botões: <em>por que eu sinto, no meio de tanta fúria, uma ponta de <strong>inveja</strong>, <strong>insegurança</strong> e <strong>falta de auto-estima</strong>?</em></p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/mrbean.jpg" alt=""  loading="lazy" /></p>
<p>Não sei se é isso, e não tenho interesse nenhum em investigar a fundo, mas é o que parece. De verdade. Todo mundo critica aquilo que acha que não pode ter, para disfarçar a pontada de inveja. <em>Dinheiro não traz felicidade</em>, yadda yadda. <em>Americanos são imperialistas</em>, yeah yeah yeah.</p>
<p><em>Whatever</em>.</p>
<p>Enquanto isso, quando questionados se sabem inglês, vêm as respostas-padrão:</p>
<ul>
<li><em>Sei ler razoavelmente bem, mas não ouço muito bem</em></li>
<li><em>Consigo entender um pouco, mas não escrevo bem</em></li>
<li><em>Ainda estou fazendo curso, mas entendo mais ou menos</em></li>
</ul>
<p>Sinceramente, quando alguém me faz uma pergunta direta, dou uma resposta direta. Se me perguntam <em>Você sabe inglês?</em>, respondo <em>Claro</em>.</p>
<p>Arrogante? Claro que é. Ninguém consegue ser nada sem uma dose de arrogância, ao lado de outras características importantes como ambição e ceticismo. Mas vamos analisar a arrogância primeiro.</p>
<h4>O Sim, O Não e o Talvez<span class="hx:absolute hx:-mt-20" id="o-sim-o-não-e-o-talvez"></span>
    <a href="#o-sim-o-n%c3%a3o-e-o-talvez" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p>Não estou falando do tipinho que diz saber tudo sem saber nada. Isso não é arrogância, é <strong>estupidez</strong>, pura e simples, porque cedo ou tarde a máscara cai. Ou quase sempre: às vezes um completo idiota se dá bem mesmo assim, por ter a sorte de conviver num meio de pessoas inferiores a ele. <em>Em terra de cego …</em></p>
<p>Como um amigo bem me disse: <em>é um pecado deixar um idiota com seu próprio dinheiro</em>. Verdade.</p>
<p>Você precisa ser arrogante, muito arrogante. A única forma legítima de ser arrogante é sabendo exatamente do que está falando. Se você tem as bolas para dizer que consegue parar um caminhão com uma mão, é bom que consiga mesmo, porque eu definitivamente vou colocar o caminhão na sua direção. É o que espero que façam comigo.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/pointing.jpg" alt=""  loading="lazy" /></p>
<p>Se alguém me pergunta <em>Você sabe X?</em>, tenho apenas duas respostas diretas: <strong>Sim</strong> ou <strong>Não</strong>. Dizer <em>não</em> de vez em quando é perdoável. Dizer <em>não</em> com frequência é derrotismo: <em>como assim você não sabe algo simples como X!?</em> Dizer <em>não</em> o tempo todo é assumir a própria incompetência.</p>
<p>Por isso quase ninguém diz simplesmente <em>Não</em>. Preferem o <em>mais ou menos</em>, o <em>acho que sim</em>, o <em>quase lá</em>. Eu vejo da seguinte forma: <em>não</em> e <em>talvez</em> são a mesma coisa, porque nenhum dos dois é <em>Sim</em>.</p>
<p>Agora, se você disser <em>Sim</em> com frequência, prepare-se para ser massacrado. Ninguém gosta de quem fala <em>Sim</em> o tempo todo, porque essas pessoas se sentem inferiorizadas: <em>como assim ele sabe e eu não?</em> Por pura mesquinharia, todos vão tentar te derrubar. Chegam a dizer <em>grande coisa que ele sabe, eu poderia saber</em>. Pode<em>ria</em>, mas não sabe.</p>
<p>Após todo esse exercício, o ponto onde quero chegar é: <strong>Acostume-se a dizer Sim o tempo todo e encare as consequências</strong>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/brunklaus_yes_no_duvet_aug_.jpg" alt=""  loading="lazy" /></p>
<p>É mais fácil dizer do que fazer, e é exatamente isso que torna únicas as pessoas que dizem Sim. Todas as outras, as que dizem <em>Não</em> (as perdedoras) e as que dizem <em>mais ou menos</em> (as enroladoras), formam o que chamamos de <em>a média</em>.</p>
<h4>Média da Média<span class="hx:absolute hx:-mt-20" id="média-da-média"></span>
    <a href="#m%c3%a9dia-da-m%c3%a9dia" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p><em>E qual o problema de ser a média? Por que preciso ser diferente de todo mundo?</em></p>
<p>Ótima pergunta. Desde bebês somos treinados a sermos iguais, porque é o modelo de civilização que deu certo. Estudamos em classes com dezenas de alunos, usamos os mesmos uniformes, lemos os mesmos livros, temos os mesmos professores. Fazemos exatamente as mesmas coisas do jardim da infância até a graduação, um longo percurso de uns 15 anos. Pelo menos 1/6 da sua vida condicionado à média.</p>
<p>Basta tirar nota média para passar de ano. Média, média, média, sempre a média. Por que todos têm dificuldade com o vestibular? Porque nesse caso a média não funciona: só passa a nata da nata. Quem foi desafiado a infância inteira a pensar acima da média nunca terá dificuldade em coisas triviais como um vestibular.</p>
<p>E por que essa minha insistência em falar de <em>média</em>? Porque ninguém parece dar importância. Parece que todos acham <strong>bom</strong> estar na média.</p>
<p>Quero que todos lembrem de uma coisa: <em>média</em> é raiz de outra palavra, <strong>medíocre</strong>, e garanto que ninguém se sente lisonjeado em ser chamado de medíocre. Lembrem disso da próxima vez que acharem que está tudo bem fazer parte da <em>média</em>.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/Graduation.jpg" alt=""  loading="lazy" /></p>
<p>Depois de toda essa semântica, volto à desculpa, digo, ao tema que deu origem a este artigo: o inglês. A maioria esmagadora dos brasileiros faz parte da turma do <em>Não</em> e do <em>mais ou menos</em>. Não saber inglês, ou saber <em>mais ou menos</em>, os coloca na <em>média</em>. No meu entender, isso os torna pura e simplesmente medíocres.</p>
<h4>Um pequeno capítulo da minha jornada<span class="hx:absolute hx:-mt-20" id="um-pequeno-capítulo-da-minha-jornada"></span>
    <a href="#um-pequeno-cap%c3%adtulo-da-minha-jornada" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p>Confesso que até sair do colégio sempre fui parte da média. Tirava as melhores notas, 9, 10, mas ainda assim na média: fiz primário, ginásio e colégio no mesmo tempo que todo mundo. Tirar muitos 10 não significa nada. Ser convidado, por mérito, a estudar no M.I.T. aos 12 anos pode, eventualmente, significar alguma coisa. Tirar 10? Nada.</p>
<p>Mas também larguei muita coisa no meio. Larguei o curso de japonês que fazia em paralelo ao primário, o curso de introdução à programação que comecei aos 12 anos e o curso de inglês do final do ginásio. A razão óbvia: achava chato. A razão menos óbvia na época: eu aprendia mais rápido sozinho, e seguir o ritmo dos outros alunos me deixava extremamente irritado.</p>
<p>Falo mais japonês que muita gente que terminou o curso. Falo mais inglês que muitos diplomados em cursos renomados. E, com certeza, programo melhor que muita gente com pós-graduação e uma pilha de certificados. Foram 3 <em>Sim</em> em sequência. Minha arrogância está afinada hoje, e agora preciso defender essa palavra.</p>
<p>Um arrogante tem que ser insistente. Não basta dizer <em>Sim</em> hoje e mudar de ideia amanhã: é preciso defender a posição com unhas e dentes. Quem consegue isso ganha respeito. Já quem apenas se <em>acha</em> arrogante e não entrega a promessa cava a própria cova mais fundo, e quem além disso não se enxerga cava mais rápido. Não dá para viver de ilusões: cedo ou tarde aparece alguém para desmascarar você, e a cova já estará pronta. A lápide é por minha conta.</p>
<p><img src="https://akitaonrails.s3.amazonaws.com/files/imagem_nike_just_do_it_peopleware.jpg" alt=""  loading="lazy" /></p>
<p>O curso de inglês do meu bairro, quando criança, era muito fraco, mas deu para aprender o básico. Só que 2 aulas de 2 horas por semana mal somam míseras 216 horas de aula. É ridiculamente pouco. Para começar a falar português você estudou pelo menos 7 mil horas: do berço até uns 3 anos de idade, aprendendo toda a estrutura necessária para conversar fluentemente. Por que a ilusão de que meras 600 horas, mesmo que fossem mil, de teoria bastariam para ficar fluente em outra língua?</p>
<p>A maioria não fica fluente. Já conheci muita gente que fez 5 anos de curso, dos bons, e fala muito mal, mal de dar vergonha. Já vi celebridades na TV, gente estudada, que me envergonha. Fico desconfortável vendo conhecidos falando aquele <em>portu-glês</em>, seja lá como chamam isso.</p>
<p>Depois de alguns meses, eu mesmo desisti do curso, bem no fim do 2º colegial. Meu inglês era passável, acima da média escolar, o que também não significava nada, porque a média brasileira é muito baixa. Só voltei a me preocupar com isso um ano depois, quando comecei a faculdade.</p>
<p>Naquela época eu só comprava livros técnicos de informática em português. Não havia <a href="http://www.amazon.com"target="_blank" rel="noopener">Amazon.com</a>, e livros importados, ou qualquer coisa importada naquela época negra de reserva de mercado, eram artigos exóticos. Não tinha TV a cabo. Nossa Internet se resumia a BBS locais. O acesso à informação era limitado, e o inglês nunca foi prioridade.</p>
<h4>A volta por cima<span class="hx:absolute hx:-mt-20" id="a-volta-por-cima"></span>
    <a href="#a-volta-por-cima" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p><a href="http://www.dvorak.org/blog"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/dvorak_small.jpg" alt=""  loading="lazy" /></a></p>
<p>Eis que na faculdade conheço pessoas mais arrogantes que eu. Muito mais. Eram desembaraçadas, lidavam com programação quase como segunda natureza, alguns desenhavam circuitos integrados no café da manhã. E, claro, ler livros em inglês era natural, tão natural que eu me sentia mal lendo os meus em português. Hoje não sei se eles eram bons mesmo, mas na época eu, com certeza, era inferior. Sendo arrogante, é claro que isso feriu minha vaidade.</p>
<p>O que fazer nessa situação? Primeiro, admitir o erro de ser <strong>ignorante</strong> e não saber. Segundo, correr atrás do prejuízo. Terceiro, garantir que nunca mais serei pego de calças curtas. Resumindo: ser <strong>pró-ativo</strong>.</p>
<p>Criei uma política pessoal: dadas duas opções de recursos, uma em português e outra em inglês, prefiro sempre a segunda.</p>
<p>Além da leitura, tive a sorte de presenciar o nascimento da Internet de massa. Não havia browsers traduzidos, sistemas operacionais ou programas em português. Era tudo em inglês na faculdade: um terminal preto e branco, alguns comandos Unix e, basicamente, força de vontade. Eu poderia dizer <em>Não</em> e terminar a faculdade exatamente como todo mundo, ou dizer <em>Sim</em> e me virar.</p>
<p><a href="http://www.amazon.com/dvd"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/dvdcollection.jpg" alt=""  loading="lazy" /></a></p>
<p>Esse esforço sistemático de leitura, mais a escrita em IRC, e-mails e newsgroups com americanos, me deixou fluente em inglês escrito. A conversação sempre foi o desafio maior. Desde a época do VHS nunca aluguei um único filme dublado e sempre evitei filmes em canais abertos. Na transição do VHS para o DVD, sempre aluguei filmes legendados, fazendo o possível para acompanhar legenda e narrativa ao mesmo tempo. Foi complicado no começo, mas quando surgiram os DVDs passei a assistir filmes falados e legendados em inglês.</p>
<p>Depois de alguns anos e centenas, literalmente, de filmes, finalmente consegui desligar as legendas. Virou rotina: quando assisto com outras pessoas, ignoro as legendas; se for dublado, nem assisto. Sou purista com qualidade, e minha arrogância não me permite assistir um filme abaixo da qualidade mínima de um DVD. Ora, estamos na geração da alta definição, HDTV.</p>
<h4>Meu Tempo Livre<span class="hx:absolute hx:-mt-20" id="meu-tempo-livre"></span>
    <a href="#meu-tempo-livre" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p><a href="https://web.archive.org/web/20070610161957/http://geekbrief.podshow.com/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/gbtv.fun.jpg" alt=""  loading="lazy" /></a></p>
<p>No ano passado comecei a ouvir audiobooks. Uma coisa óbvia me passou pela cabeça: o tempo que eu gastava no trânsito, entre o trabalho e casa, era uma grande perda. Num dia de 24 horas, eu perdia sistematicamente mais de 8% do dia. Considerando só as 16 a 17 horas acordado, quase 12%! São pelo menos 2 horas por dia, 5 dias por semana, mais que as 2 horas em 2 dias de um curso qualquer de esquina.</p>
<p>Graças à Internet e ao <a href="https://web.archive.org/web/20070601223450/http://btjunkie.org/"target="_blank" rel="noopener">BitTorrent</a>, baixei dezenas de livros. Li todos os livros da moda, no carro: Dan Brown, J.K. Rowling, J.R.R. Tolkien inteiros. Li clássicos como Neuromancer e 1984, e grandes obras de Richard Dawkins, Sam Harris e do saudoso Carl Sagan. Foram facilmente 500 horas de audiobook em 1 ano, e tem mais na fila.</p>
<p><a href="https://web.archive.org/web/20081205014148/http://www.apple.com/itunes/store/podcasts.html"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/podcast_hero_mac20060912.jpg" alt=""  loading="lazy" /></a></p>
<p>E agora, faz alguns meses que não consigo desgrudar de <a href="http://en.wikipedia.org/wiki/Podcasting"target="_blank" rel="noopener">Podcasts</a>. Mas não ouço nenhum nacional. Não tem nada a ver com xenofobismo brasileiro, vira-casaca americano, blá blá blá. Primeiro porque acho essa argumentação uma total perda de tempo. Segundo porque, mais que idealismo anti-americanista, isso é só desculpa para enrolar e não aprender inglês. Terceiro porque meu objetivo é aprimorar meu inglês: meu português eu já treino todo dia, nas outras 15 horas.</p>
<p>E quais eu ouço? Meus favoritos são os da <a href="http://www.twit.tv"target="_blank" rel="noopener">TWiT.tv</a>, chefiada pelo bonachão Leo Laporte e seus convidados, em programas como o <a href="http://www.twit.tv/TWiT"target="_blank" rel="noopener">This WEEK in TECH</a>, com o ácido John Dvorak, Merlin Mann e outros. Tem o Steve Gibson e seu <a href="http://www.twit.tv/SN"target="_blank" rel="noopener">Security Now!</a>, o Paul Thurrott no <a href="http://www.twit.tv/ww"target="_blank" rel="noopener">Windows Weekly</a>, Merlin Mann, Alex Lindsay e Scott Bourne no <a href="http://www.twit.tv/mbw"target="_blank" rel="noopener">MacBreak Weekly</a> e o Chris DiBona no <a href="http://www.twit.tv/FLOSS"target="_blank" rel="noopener">FLOSS Weekly</a>.</p>
<p><a href="http://www.veronicabelmont.com/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/veronicabelmont.jpg" alt=""  loading="lazy" /></a></p>
<p>E falando em John Dvorak, suas polêmicas continuam no programa dele, o <a href="https://web.archive.org/web/20070528233354/http://www.crankygeeks.com/"target="_blank" rel="noopener">Cranky Geeks</a>. Acompanho o trabalho dele há anos, acho que desde o começo dos anos 90, pela PC Magazine. Ainda tem o Patrick Norton no <a href="https://web.archive.org/web/20070605144724/http://dl.tv/"target="_blank" rel="noopener">DL.tv</a>. A <a href="https://web.archive.org/web/20070606005731/http://geekbriefwp.podshow.com/"target="_blank" rel="noopener">Cali Lewis</a>, do GeekBrief|TV, não dá nenhuma grande novidade que eu já não saiba, mas a simpatia dela vale os 5 minutos do programa. O mesmo vale para a igualmente simpática Veronica Belmont (é sempre bom escutar vozes femininas) no programa diário da C|Net, o <a href="https://web.archive.org/web/20081012062942/http://reviews.cnet.com/4520-11455_7-6457370-1.html"target="_blank" rel="noopener">Buzz Out Loud</a>. Sim, notícias interessantes, <strong>TODOS OS DIAS!</strong></p>
<p><a href="https://web.archive.org/web/20070609013033/http://www.pixelcorps.com/"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/logo_grey.gif" alt=""  loading="lazy" /></a></p>
<p>E não dá para deixar de mencionar: muitos dos podcasts que acompanho diariamente têm produção com qualidade de TV. Na TWiT os video podcasts são em alta definição, as trilhas de áudio têm excelente mixagem, os apresentadores têm ótima dicção, os assuntos são bem selecionados e a edição é muito boa. Quase não se sente aquele ar de amador que eu pessoalmente detesto. Já existem produtoras profissionais, como a Pixel Corps, do Alex Lindsay.</p>
<p><a href="https://web.archive.org/web/20120614010049/http://www.businessweek.com/magazine/content/06_33/b3997002.htm"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/diggnation.png" alt=""  loading="lazy" /></a></p>
<p>O canal <a href="https://web.archive.org/web/20070604202528/http://revision3.com/"target="_blank" rel="noopener">Revision3</a> também não fica atrás, com o grande <a href="https://web.archive.org/web/20070530060022/http://revision3.com/diggnation"target="_blank" rel="noopener">Diggnation</a>, do Kevin Rose comentando as notícias da página principal do excelente <a href="http://www.digg.com"target="_blank" rel="noopener">Digg.com</a>. Quem é bem informado tem praticamente obrigação de acompanhar o Digg. Aliás, mais uma vez muita gente me frustra. Como podem sair por aí falando de Web 2.0 e todo esse blá blá blá sem ter noção do que está acontecendo no Vale do Silício? Ninguém leu a Business Week do ano passado, <a href="https://web.archive.org/web/20120626074627/http://www.businessweek.com/magazine/content/06_33/b3997001.htm"target="_blank" rel="noopener">Valley Boys</a>? Kevin Rose é um dos representantes da nova geração de jovens interneteiros milionários, e o podcasting é um dos maiores canais de comunicação tech da atualidade.</p>
<p>Finalmente, voltando um pouco à leitura, minha rotina envolve o <a href="https://en.wikipedia.org/wiki/Google_Reader"target="_blank" rel="noopener">Google Reader</a>. Como disse antes, tenho cerca de 90 websites com RSS agregados no Reader. Durante o dia, em uma hora chegam entre 50 e 100 notícias novas. Não leio todas: em um dia talvez leia uma dúzia de boas matérias. Primeiro porque separar lixo de coisa útil exige experiência. Segundo porque leitura dinâmica resolve: bato o olho e parto para a próxima. Consigo passar por 100 notícias em 15 minutos e garanto que não deixo passar nada importante.</p>
<p><a href="https://web.archive.org/web/20091027192228/http://www.google.com/help/reader/tour.html"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/googlereader.png" alt=""  loading="lazy" /></a></p>
<p>Parece muita coisa? Claro que não. Toma uma parte substancial do meu tempo, mas é uma rotina sistemática, tão natural quanto escovar os dentes ou tomar banho: quando você não faz, não se sente confortável o resto do dia. É isso que diferencia atletas olímpicos de jogadores de várzea: dedicação. Todo mundo que quer atingir algo precisa sair da média e fazer coisas que, para os medíocres, parecem muito, impossíveis, inatingíveis.</p>
<p>Tenho um outro argumento. Quando encontro alguém com mais conhecimento ou habilidade na minha área do que eu, penso apenas: <em>ele é tão ser humano quanto eu</em>, portanto, seja lá o que ele fez para saber mais, eu também posso fazer. Tudo é atingível, não existe fim, porque para cada teto existe outro mais alto. É só uma questão de parar de dizer <em>Não</em>, <em>mais ou menos</em>, <em>talvez</em>.</p>
<p><a href="https://web.archive.org/web/20070812001929/http://www.twit.tv/KFI"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/podcast_10.jpg" alt=""  loading="lazy" /></a></p>
<p>Comecem a dizer <em>Sim</em> e, daqui pra frente, não voltem atrás. Se der meia volta, será mais difícil recomeçar: cada passo pra trás exige dois pra frente só para chegar onde você estava.</p>
<p>Seja arrogante, de verdade. Um verdadeiro arrogante ri das dificuldades para poder se vangloriar das conquistas. Quem não briga não tem conquistas e, portanto, nunca poderá ser arrogante.</p>
<h4>Epílogo<span class="hx:absolute hx:-mt-20" id="epílogo"></span>
    <a href="#ep%c3%adlogo" class="subheading-anchor" aria-label="Permalink for this section"></a></h4><p>Antes de terminar, vale dar mais uma ajuda. Abaixo seguem os arquivos OPML do meu Google Reader e do meu iTunes, ou seja, toda a coleção de websites, blogs e podcasts que assino e consumo diariamente. Alguns são links antigos que conservo há mais de uma década. Espero que aproveitem, e espero que todos saibam o que fazer com um arquivo OPML.</p>
<p>Caso não saibam, leiam <a href="https://web.archive.org/web/20100208134110/http://www.google.com/help/reader/faq.html#import"target="_blank" rel="noopener">este</a> link e <a href="https://web.archive.org/web/20080726084432/http://www.apple.com/itunes/store/podcaststips.html"target="_blank" rel="noopener">este</a> outro.</p>
<ul>
<li><a href="https://web.archive.org/web/20090105202218/http://akitaonrails.com/files/akitaonrails-google-reader-subscriptions.xml"target="_blank" rel="noopener">Google Reader Subscriptions</a></li>
<li><a href="https://web.archive.org/web/20090105201649/http://akitaonrails.com/files/akitaonrails-Podcasts.opml"target="_blank" rel="noopener">iTunes Podcasts Subscriptions</a></li>
</ul>
<p>Por que tanta <em>propaganda</em> em cima de podcasts? Simples: é a forma mais prática de adquirir toneladas de conteúdo informativo de alta qualidade para treinar o tão temido <em>listening</em>. Esqueçam aqueles cassetes horrorosos de cursos de inglês. Aprendam com a coisa real.</p>
<p><a href="http://www.tikibartv.com"target="_blank" rel="noopener"><img src="https://akitaonrails.s3.amazonaws.com/files/tiki_bar_tv.jpg" alt=""  loading="lazy" /></a></p>
<p>Meus próximos passos: continuar aprimorando meu inglês todos os dias e pular para outra coisa. Quero aprender chinês, mandarim, o próximo grande pré-requisito do futuro depois do inglês. O interessante? Só achei bons materiais para aprender chinês escritos em inglês! Virtualmente não existe nada decente sobre chinês escrito em português.</p>
<p>Inglês é o ponto de partida para tudo. Não adianta espernear, não adianta enrolar. A maioria dos melhores materiais, principalmente na nossa área de tecnologia, é escrita APENAS em inglês. Não se iludam: todo o resto é cópia pálida do original.</p>
<p><em>Você é exatamente o que você se faz</em></p>
]]></content:encoded><category>carreira</category><category>aprendizado</category><category>produtividade</category><category>off-topic</category></item></channel></rss>