Categories
Etc.

Meu ambiente de trabalho em 7 itens

O Anderson Casimiro (@duodraco) começou um meme muito legal: “Seu ambiente de trabalho em 7 itens”. Nele você escreve sobre quaisquer 7 coisas do seu ambiente de trabalho que achar mais interessantes e em seguida indica de 3 a 5 pesoas para fazerem o mesmo. O Anderson passou o meme para o Ivo Nascimento (@ivonascimento), que depois mandou para o Bruno Roberto Gomes (@brgomes) e por fim para o Hélio Costa (@hlegius) que me colocou nesta roda.

Então vamos lá, as 7 coisas que mais gosto e acho importantes no meu ambiente de trabalho são:

1) Git + Github

O Git é uma fantástica ferramenta de controle de versão. Sua característica principal é ser um sistema de controle de versão distrubuído, o que significa que você pode criar repositórios locais independentes de um servidor central, por exemplo. Com isso você pode criar facilmente novos branchs e repositórios praticamente sem custo (ou seja, muito rápido). Outra coisa sensacional é que o Git praticamente resolve sua vida com relação a merges. Na maioria das vezes ele consegue “se achar” sozinho e resolver conflitos para você, o que poupa um bocado de tempo quando você está trabalhando em equipe com várias pessoas alterando a mesma base de código.

O Github faz o Git – que ja é fantástico – ficar ainda melhor. O Github mudou para melhor a forma de colaboração entre desenvolvedores em projetos open source. Basta você criar um clone remoto do projeto que deseja contribuir, fazer suas alterações e fazer um “pull request”. Você pode adicionar colaboradores nos seus repositórios ou até mesmo criar um time de colaboradores. Isso é mais ou menos o que as pessoas já faziam antes, o Github apenas entendeu esse processo e criou uma ferramenta excelente para suportá-lo com algumas melhorias. E isso tudo não serve apenas para projetos abertos não, você pode fazer como eu (e muita gente) e por alguns míseros dólares você terá seus repositórios privados para trabalhar nos seus projetos particulares. Hoje basicamente não tenho nada importante que não esteja no Github.

2) Google App Engine

O Google App Engine também é um absurdo. Com ele você pode desenvolver aplicações Python ou Java num estalar de dedos e colocá-las para funcionar numa infraestrutura bastante confiável e rápida. O App Engine oferece banco de dados, cache, storage e várias coisas úteis que te ajudam a focar na sua aplicação e esquecer a infraestrutura. Para os Railers que lêem este blog, o Heroku é um bom quebra galho (mesmo sendo bem mais simples que o App Engine).

3) VMWare Fusion

O VMWare Fusion me possibilita ter vários sistemas operacionais com diferentes browsers para testar minhas aplicações web em uma máquina só. Além disso, como trabalho muitas vezes desenvolvendo coisas que serão servidas com Red Hat Enterprise Linux ou CentOS, posso facilmente criar ambientes de desenvolvimento locais com esses sistemas operacionais e continuar trabalhando no conforto do meu Mac sem ficar com medo das coisas não funcionarem em produção.

4) TextMate

Todo mundo tem seu editor preferido, e o meu é o TextMate. Gosto dele porque é leve, fácil de escrever plugins e snippets e possui umas centenas de plugins disponíveis por aí para trabalhar com qualquer linguagem que já precisei até hoje, suportar sistemas de controle de versão, e por aí vai. Infelizmente não consigo usá-lo para todas as linguagens que trabalho. Por exemplo, quando programo em Java ainda prefiro usar o Eclipse, ou o XCode para brincar com iOS, mas para todo o resto uso o TextMate (ou, quando em servidores remotos, o Vim).

5) Shell

Não tem como sobreviver sem um shell. Eu costumo usar o Terminal do Mac OS X com algumas customizações, e como shell uso o Bash. Além de me possibilitar diagnosticar problemas em servidores remotos, ver logs e etc., também uso o shell para algumas tarefas de desenvolvimento como usar o Git (incluindo resolver conflitos, prefiro fazer manualmente), buscar arquivos, inspecionar minha máquina e por aí vai. Também costumo escrever shell scripts para fazer algumas tarefas pessoais como codificar vídeos com ffmpeg e fazer backups remotos.

6) MacBook + Mac OS X

Os Macs são computadores que simplesmente funcionam. É isso. Meu MacBook Pro é potente e tem um hardware excelente que não me deixa na mão. E quanto ao Mac OS X, ao invés de ficar no meu caminho me pedindo drivers para fazer qualquer coisa ele simplemente funciona e deixa o caminho livre para que eu possa trabalhar. Já se foi a época em que eu tinha tempo para comprar peça por peça e montar meu próprio computador, ou então ficar re-configurando meu xorg.conf a cada update de sistema operacional. 🙂 Hoje não dá mais, preciso focar em coisas mais importantes.

7) Monitor adicional de 24″, teclado e mouse

Nós que trabalhamos intensivamente com computadores não podemos nos dar ao luxo de não ter um teclado, mouse ou monitor confortáveis. O monitor de 24″ é o mais importante do meu setup de trabalho. Usar dois ou mais monitores me deixa muito mais produtivo, além de ser muito mais confortável do que o display do MacBook (porque é gigante). Se você nunca tentou usar dois monitores, não perca mais tempo e tente agora, você vai ver a diferença. Quanto ao mouse e teclado, durante muito tempo usei hardware Microsoft (aliás, isso eles fazem bem) mas recentemente tenho usado o Magic Mouse e um mini teclado sem fio, ambos da Apple.

E para continuar a brincadeira…

Indico mais 5 pessoas para participar:

Categories
Discussão

Porquê eu não gosto de desenvolver sites usando Flash

Uma vez estava no carro com minha esposa procurando um lugar para jantar (porque o primeiro lugar que fomos estava lotado). Um amigo me recomendou uma pizzaria que é bem popular aqui em São Paulo e decidimos ir para lá, mas primeiro queria ver se eles não estavam com fila de espera também. Quando entrei no site do restaurante para pegar o telefone e ligar… não funcionou porque o site é feito em Flash – que não funciona no iPhone.

Quem me acompanha no Twitter já deve ter percebido há tempos que eu não sou muito fã de Flash, mas quando eu faço os meus “rants” fica parecendo que eu não gosto pura e simplesmente porque sou fã de carteirinha do iPhone.

Se fôssemos discutir esse episódio do ponto de vista do usuário, a primeira coisa que alguém falaria seria “ah, você deveria ter um Android porque ele roda Flash”. Mas eu não quero entrar nesse mérito. Na verdade quero discutir esse problema de outro ponto de vista, o do dono do negócio (o cara que paga para alguém fazer o seu site).

Se você tem um negócio – seja uma pizzaria, um mercado, uma empresa de desenvolvimento de software e por aí vai – você possivelmente vai querer estar na Internet, afinal, alguns dos 67,5 milhões* de Brasileiros que são usuários de Internet podem acabar “esbarrando” no seu site e comprando algum produto ou ao menos conhecendo sua empresa (*dados do Ibope/Nielsen de dezembro de 2009).

Uma pessoa da minha família passou por essa experiência recentemente. Ele contratou uma empresa para desenvolver um site para a sua empresa justamente porque queria ser encontrado na Internet e queria vender seus produtos para mais pessoas. Acontece que a empresa que ele contratou desenvolveu o site em Flash, que obviamente não funciona no iPhone. Mas mais do que isso, o site bloqueia alguns comportamentos padrão do navegador (barra de rolagem e o botão de voltar/avançar), além de não ser indexado nos mecanismos de busca. Obviamente ele não percebeu nada disso por ser leigo no assunto, mas eu fiz uma brincadeira bem rápida procurando por alguns dos produtos da empresa dele em ferramentas de busca e vários sites de concorrentes apareçeram nos resultados, mas o dele não. Não preciso nem dizer que ele ficou decepcionado (e com razão).

Pensando como o dono do negócio, eu diria: “Ora bolas, se eu invisto dinheiro para ter um site, eu quero que ele seja acessível para o maior número de pessoas possível!” E como profissional de Internet, não gosto de desenvolver usando Flash pelos mesmos motivos a não ser que eu não tenha escolha (mas geralmente há uma saída). Para ser um pouco mais claro, meus motivos são os seguintes:

1) Sites em Flash não são indexados direito em mecanismos de busca

A maioria das informações dos sites em Flash ficam dentro de um arquivo compilado que não é lido pelos “crawlers“. Se o conteúdo não pode ser indexado ele dificilmente será encontrado por possíveis usuários/compradores/etc. em ferramentas de busca. Até existem formas de contornar esse problema, mas uma rápida análise em alguns sites em Flash conhecidos me mostraram que em mais de 90% dos casos os desenvolvedores não se preocupam em fazer com que o site seja buscável. Ferramentas de busca hoje em dia são fundamentais para ajudarem os usuários a acharem o que precisam na Internet. O site que não aparece bem em buscas certamente está deixando de ter uma boa quantidade de usuários a mais.

2) Sites em Flash não são acessíveis para pessoas com deficiência

Pessoas com deficiência visual utilizam “screen readers” para navegarem na Internet. A navegação nesses leitores de tela é feita com base nas tags HTML da página. Por exemplo, as tags <h*> ajudam o cego a navegar pelos tópicos principais que a página cita. O alt (da tag <img>) ajuda-o a saber qual o conteúdo das imagens, e por aí vai. Se o site é feito em Flash, nada disso vai funcionar. É possível contornar esses casos (assim como no tópico anterior), mas é trabalhoso e ninguém faz. Dos 20 sites populares que analisei antes de escrever esse post nenhum se preocupou com isso. Se você faz o seu site em HTML, isso tudo já funciona praticamente “de graça”.

É claro que pessoas cegas são uma minoria da população, mas nós temos sorte de não fazer parte dela. Justamente por serem minoria eles acabam muitas vezes sendo excluídos, e como se a cegueira já não fosse sofrimento suficiente eles sofrem ainda mais. É uma questão humana que, pelo menos para mim, conta bastante.

3) Flash atrapalha algumas funções nativas dos navegadores

Sites em Flash muitas vezes atrapalham o funcionamento padrão dos navegadores. Um exemplo clássico é que eles fazem com que o botão de Avançar/Voltar parem de funcionar ou funcionem errado. Esse mesmo problema impede que um usuário consiga gravar nos seus “Favoritos” uma página específica (porque o endereço é o mesmo para o site inteiro, e quando ele acessar vai cair na página principal do site ao invés da página que ele queria). Muitos sites já corrigem isso atualizando as URLs ao longo da navegação, mas vários não funcionam direito. Um outro exemplo pior ainda é quando sites em Flash substituem a barra de rolagem nativa do navegador por uma específica do Flash. Esse sim é um problema terrível, porque até o scroll do mouse para de funcionar. Quer ver como é perturbador? Então veja este site. Por favor, será que dá para me deixar usar o navegador direito?

4) Flash é pesado, especialmente se você está em redes 3G/Edge ou conexões lentas

Tudo bem, os sites em Flash funcionam em Android. Mas o que você acha de ter que esperar um Flash de 2MB carregar para você poder começar a usar o site? E olha que nem estou contando as famosas introduções animadas, das quais vou falar daqui a pouco. As aplicações em Flash ficam gigantescas e lentas, especialmente para quem está acessando de dispositivos móveis ou de conexões mais lentas.

5) Muitos designers de sites em Flash esquecem da usabilidade

Veja este site. Eu que não sou nenhum especialista em UX sei há anos que rolagem horizontal é abominável. Neste exemplo eles anda fizeram com que o trackpad do meu notebook não funcione corretamente, proporcionando assim a maneira mais lenta e tediosa possível de rolar para achar a informação que eu preciso. Agora veja este outro site. Fiz um teste rápido em casa e minha mãe não foi capaz de usá-lo, tem animações demais e objetividade “de menos”. Aposto que muitas outras pessoas também não conseguiriam. Você não constrói sites somente para pessoas que entendem de Internet ou são capazes de “fuçar” e descobrir como funcionam as coisas. A Internet é aberta e todo tipo de gente usará o seu site, por isso é preciso que ele seja tão fácil e direto quanto possível. Não adianta se preocupar somente em fazer sites bonitinhos, eles precisam ser funcionais também.

6) Flash não funciona em todos os dispositivos móveis

Sites em Flash não funcionam em iPhones e iPads, por exemplo. O iPhone – especialmente o 4 – é um fenômeno de vendas. No primeiro dia de venda foram vendidas 300.000 unidades do iPhone 4. No Brasil, várias pessoas foram para a porta da loja à meia noite para poderem ser os primeiros a comprarem o aparelho. Até hoje as lojas das maiores operadoras ainda estão com o aparelho em falta (porque todas as unidades que chegam são vendidas num piscar de olhos). Isso sem contar o iPad, que estima-se que serão vendidas 10 milhões de unidades até o fim de 2010. Ou seja, estamos falando de uma quantidade expressiva de aparelhos. Assim como você se preocupa em desenvolver sites compatíveis com vários navegadores, você precisa se preocupar com dispositivos móveis. Seria muito mais fácil desenvolver para Firefox somente, mas infelizmente há um grande número de usuários que usam Internet Explorer (incluindo IE6, infelizmente) e você não pode deixar de levar isso em consideração, senão eles não conseguirão usar seu produto. O mesmo vale para iPhone – seria muito mais fácil se você não precisasse se preocupar com ele, mas um grande número de pessoas estão usando e você não vai querer deixar essas pessoas de fora do seu site. Se você realmente precisar usar Flash, preocupe-se em ao menos desenvolver uma versão compatível com outros dispositivos (como fizemos na época que eu trabalhava na Globo.com, por exemplo).

7) Introduções em Flash são pouco úteis

Qual é o objetivo funcional de uma introdução em Flash em um site? Pense. Não há nenhum! Sites em Flash muitas vezes tem aquelas introduções gigantes e tediosas que são uma maneira super eficiente de impedir os usuários de fazerem o que eles precisam. Pode ser que isso tenha sido legal há alguns anos quando era novidade, mas isso já passou há muito tempo.

Concluindo…

Como falei no início, minha análise é do ponto de vista dos nossos clientes, ou seja, das pessoas que nos pagam para fazermos bons projetos de websites. Tenho certeza que você que é profissional de Internet como eu não quer fazer projetos ruins (ou não tão bons quanto poderiam ser).

Existem um monte de ferramentas que te permitem criar sites funcionais, rápidos, acessíveis e eficientes. Mais recentemente com o HTML5, muitas das coisas que antes só eram possíveis com Flash (ou Silverlight) agora são nativas dos navegadores.

Da próxima vez que você for usar Flash, pense duas vezes. E se não tiver jeito e você for usar mesmo, por favor faça direito. 🙂

Categories
Fun iPhone

Desbloqueando um iPhone dentro da Apple Store

Quem seria tão ousado de desbloquear um iPhone dentro de uma Apple Store?

Se você acha isso impossível, veja nesse vídeo um ato de extrema coragem quando eu, Danilo e Evandro desbloqueamos um iPhone (2G) dentro da Apple Store da Stockton Street em San Francisco/USA!

Era para ser um vídeo anônimo mas como o telefone era novo apareceu no reflexo da tela a minha cara e a do Danilo várias vezes, por isso o vídeo ficou guardado por muito tempo (desde novembro de 2007) porque eu achava que ia dar problema se o publicasse. Porém, se agora tem até empresa que desbloqueia iPhone, acho que o vídeo é inofensivo.

O processo foi muito tenso mas acabou virando uma história daquelas que você conta para os netos! É muito divertido saber que nós desbloqueamos um iPhone em 13 minutos (da caixa lacrada até o telefone desbloqueado no bolso) com uma penca de seguranças em volta, câmeras e usando a rede wi-fi da própria Apple e os computadores da loja para pesquisar informações sobre o anySIM! Hahaha!

Categories
Engenharia de software

Simplicidade

Há mais ou menos um mês terminei de ler o livro Presentation Zen do Garr Reynolds. O livro é muito legal e tem excelentes dicas sobre como fazer apresentações baseadas nos princípios Zen. O Garr trabalhou durante muito tempo na Apple fazendo design de apresentações e é fato que a Apple arrebenta nesse quesito. Depois de assistir apresentações que foram verdadeiros shows na Apple WWDC decidí ler o livro e tentar aprender alguma coisa sobre o que eles fazem.

Quando eu estava lendo o livro, um trecho de um capítulo que fala sobre os princípios de design acendeu uma lâmpada na minha cabeça e me fez atentar para uma coisa que acontece diariamente no desenvolvimento de software:

“Design can make things easier for the viewer or the user. Design is not decoration. If anything, design is more about subtraction than addition. Visually, we do not want to include too much, nor do we want to exclude too much. Generally, people err on the side of including too much visual information, which often results in clutter and confusion.

É verdade. Existe uma tendência grande das pessoas acharem que mais funcionalidades e complexidade é sempre melhor. As pessoas pensam exatamente como descreve o livro Getting Real da 37 Signals:

“Conventional wisdom says that to beat your competitors you need to one-up them. If they have four features, you need five (or 15, or 25). If they’re spending x, you need to spend xx. If they have 20, you need 30.

This sort of one-upping Cold War mentality is a dead-end. It’s an expensive, defensive, and paranoid way of building products. Defensive, paranoid companies can’t think ahead, they can only think behind. They don’t lead, they follow.

Transportando para o mundo do desenvolvimento de software, eu vejo que muitos desenvolvedores adoram entulhar seus códigos com todos os design patterns que já ouviram falar, adoram usar EJBs em qualquer coisa, adoram inventar seus frameworks malucos… Enfim, adoram fazer tudo que é complexo e trabalhoso. Assim como no design, entulhar o código com essas coisas só fazem ele ficar muito mais difícil de ser mantido e entendido!

Talvez um dos motivos disso acontecer seja que nem sempre o desenvolvedor tem senso de urgência e visão do negócio. Nem sempre ele entende que não dá para perder 3 dias fazendo um menu JavaScript que abre e fecha, ou passar 80% do tempo tentando encaixar design patterns no código, ou criar uma arquitetura com 36 camadas para diminuir o acoplamento. Essas coisas podem ser extremamente prejudiciais para o projeto, porque o cliente está esperando triplicar o faturamento e o número de visitantes do seu site e essas coisas não vão ajudar em absolutamente nada. A oportunidade de usar design patterns, criar camadas no software ou qualquer outra coisa surgirá naturalmente no decorrer do projeto. Se isso não acontecer, então simplesmente não os use.

Uma dica para descobrir se você ou alguém está fazendo uma coisa útil ou não é tentar responder a seguinte pergunta: “Qual problema será resolvido com isso?”. Ultimamente tenho feito essa pergunta para todo mundo e percebí que muito mais da metade das coisas não são justificáveis. É incrível como as pessoas criam coisas sem nenhum motivo, que só deixam o software mais complexo sem necessidade, tanto internamente (código) quanto externamente (interface).

Por isso eu gosto e recomendo trabalhar sempre com uma das regras básicas do XP. Independente de usar XP ou não, a simplicidade é uma ótima regra:

“A simple design always takes less time to finish than a complex one. So always do the simplest thing that could possibly work. If you find something that is complex replace it with something simple. It’s always faster and cheaper to replace complex code now, before you waste a lot more time on it. Keep things as simple as possible as long as possible by never adding functionality before it is scheduled. Beware though, keeping a design simple is hard work.”

Se você é desenvolvedor e adora complicar tudo, pare de brincar de professor pardal e pense simples, ou é isso que vai acontecer com a sua empresa:

Categories
Eventos Notícias

[Apple WWDC 2008] Direto dos bastidores

Moscone Center - WWDC 2008Fiquei desde as 5:30 da manhã na fria 4th Street em frente ao Moscone Center para poder conseguir ver o keynote do Steve Jobs, que abriu a Apple Worldwide Developers Conference de 2008. E se você acha que isso foi maluquice minha você se engana. Teve gente que chegou aqui no domingo à noite, isso sim é maluquice. Quando passei de carro na 4th Street às 8 da noite de domingo já tinha um desenvolvedor maluco na fila segurando uma placa “will code for food”.

Mesmo com a galera tendo madrugado na fila, não faltou empolgação. De vez em quando vinha alguém da Apple jogar uns brindes e um deles foi uma camisa reveladora que dava uma pista do que estava por vir no eventoo lançamento de uma nova geração de iPhones. De fato o novo iPhone foi lançado e pela metade do preço do anterior, agora por $199. Além disso ele tem mais bateria, GPS, conexão 3G e um monte de softwares novos como a App Store, criada para baixar e instalar novos programas (mesma idéia do já conhecido Installer).

De cara já percebe-se que essa conferência é diferentes das outras. A galera aqui é muito empolgada e muito fã da Apple, é contagiante. Para se ter uma idéia, a fila para assistir à abertura do evento tinha até grito de torcida e “ola”, dá pra acreditar?

Steve Jobs Keynote - WWDC 2008O keynote do Steve Jobs foi sensacional, para variar. Não é todo dia que você vê uma lenda viva na sua frente, e vir aqui nesse evento me faz perceber parte do porque o cara é uma lenda. Eles pensam em todos os detalhes. A organização é excelente e as apresentações são um verdadeiro show, desde a iluminação, efeitos e piadinhas nerds (muitas vezes provocando a Microsoft e outros concorrentes) até o conteúdo técnico de alto nível.

Essa semana vai ter muita coisa para ver e essa provavelmente será a última vez que eu vou blogar, então, para quem quiser saber mais sobre o evento, o pessoal de Tecnologia do G1 está fazendo várias pequenas reportagens sobre a conferência e eu estou postando algumas fotos no meu Flickr e no Twitter de vez em quando.

Categories
Eventos Notícias

Apple WWDC 2008, aí vou eu!

Apple WWDC 2008Nos últimos dias tenho andado meio sumido, eu sei. O que acontece é que eu andei dedicando praticamente todo o meu tempo ao XCode, Objective-C e coisas do tipo para chegar bem afiado na Apple Worldwide Developers Conference 2008 que acontecerá na próxima semana em San Francisco.

Com certeza eu vou madrugar na fila para poder assistir ao keynote do Steve Jobs, onde ele possivelmente vai apresentar o novo iPhone 3G e outras coisas mais. As apresentações e laboratórios também parecem ser bem legais e eu espero aprender muita coisa boa por lá!

Fiquem ligados no meu Twitter segunda-feira às 14:00 horas (horário de Brasília) porque eu vou fazer uma cobertura online do keynote (se o Twitter não ficar offline como de costume)! 🙂

Categories
Notícias

iPhone desbloqueado e funcionando no Brasil

Acabo de receber a notícia de que o Antônio Carlos conseguiu desbloquear o seu iPhone para funcionar no Brasil com a operadora TIM! Este é provavelmente um dos primeiros iPhones desbloqueados no país (o segundo que eu tenho notícia, atrás apenas do Marcello Azambuja).

Ele disse que em breve disponibilizará mais detalhes no seu blog e por enquanto você pode ir conferindo a prova desta façanha.

Conversando com o Antônio e o Marcello hoje de manhã eles me disseram que o processo é bem delicado (mais detalhes em http://iphone.unlock.no) e que qualquer descuido pode fazer com que o telefone vire um belo peso de papel de 500 dólares.

O Marcello prometeu colocar em breve no site dele todo o processo de desbloqueio explicado de forma detalhada, com muitas fotos e algumas melhorias no tutorial original.

E eu que estava pensando em comprar um Nokia E61 já estou reavaliando minhas intenções… 🙂

Categories
Mac

Como fazer print screens no Mac OS X

O print screen (impressão ou captura de tela) é um recurso utilizado para “fotografar” a tela do seu computador em um certo momento. Ele gera uma imagem de tudo que está na tela, exatamente como está. Mas se você chegou até aqui, certamente já sabe o que é um print screen, só não sabe como fazê-lo no Mac.

Deixe-me adivinhar, você está procurando a tecla “Print Screen” desesperadamente e não acha mas você tinha certeza que já tinha visto esta tecla? Então eu tenho uma boa notícia: você não está louco e nem cego. Realmente esta tecla não existe no Mac, só nos PCs comuns. Foi lá que você viu.

Uma coisa boa do print screen do Mac é que você não precisa de nenhum programa além do próprio Mac OS para fazê-lo. Como sabemos, no Windows você teria que apertar a tecla “Print Screen” e depois colar a foto em algum programa (Paintbrush, Photoshop, Word, etc) para depois salvá-la. Parece bom o suficiente, mas no Mac, as coisas são bem mais legais (pra variar). Ele pode salvar a imagem direto para você sem precisar de programa algum, sem contar que você pode capturar uma tela inteira, um pedaço dela, ou somente uma janela… E se você quiser mandar para o clipboard (área de transferência) para colar no programa que quiser, também pode. Funciona assim:

command+shift+3: Captura a tela inteira e salva numa imagem no seu Desktop (Mesa), em formato PNG.

command+shift+4: Captura uma parte da tela que você escolher, e salva no seu Desktop. Ao usar esta combinação, o cursor do mouse vira um alvo e você seleciona a área que quer capturar. Você arrasta e quando soltar ele automaticamente captura a tela.

command+shift+4 e depois barra de espaço: Se você usar a combinação anterior (command+shift+4) e em seguida apertar a barra de espaço, o ponteiro do mouse que era um alvo vira uma câmera, e você pode clicar com ela em cima da janela que você quer para capturar somente ela e salvar a imagem no seu Desktop.

qualquer combinação+ctrl: Ao invés de salvar a imagem no Desktop, a imagem fica no clipboard e você pode colar no programa que desejar, sem gerar uma imagem automática.

alterar o formato do arquivo: É possível escolher o formato do arquivo que o print screen gera, pode ser PDF ou PNG. Para alterar esta opção, abra o Terminal e digite o comando “defaults write com.apple.screencapture type pdf” e pressione enter. Desta forma você altera o formato do arquivo para PDF. Para alterar para PNG, basta substituir no comando o pdf por png. Você deve fazer logout ou reiniciar o Mac para que esta alteração passe a valer.

E então? É fácil ou não é?

E não para por aí! Em todas as capturas de tela feitas através destes comandos, as imagens são armazenadas em formato PNG (Potable Network Graphics) que como o próprio nome já indica é um formato de imagem compactado, ou então em PDF que também não fica com a qualidade muito boa. Se você precisar de print screens com maior qualidade, você pode utilizar o programa Grab, que vem com o Mac OS e fica na pasta Utilities (Utilitários). Ele salva as imagens em formato TIFF com alta resolução. Ele é bem simples de usar e dispensa maiores explicações.

Categories
Mac

Configurando cores no Terminal.app

Para deixar o Terminal do Mac OS X mais colorido, faça o seguinte:

1) Adicione o seguinte conteudo no fim do arquivo ~/.bashrc (se ele não existir, crie-o):

export TERM=xterm-color
alias ls="ls -G"

2) Adicione o seguinte conteúdo no fim do arquivo ~/.vimrc (se ele não existir, crie-o):

:syntax on

Reinicie o Terminal e pronto, tenha uma vida mais colorida:

Terminal colorido

Se quiser melhorar ainda mais, o Zé Peleteiro escreveu no seu blog uma dica interessante sobre como configurar Unicode no Terminal. Vale apena conferir.