Posts Tagged ‘Apple’

Desbloqueando um iPhone dentro da Apple Store

Saturday, March 21st, 2009

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!

Simplicidade

Saturday, August 30th, 2008

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:

[Apple WWDC 2008] Direto dos bastidores

Tuesday, June 10th, 2008

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.

Apple WWDC 2008, aí vou eu!

Thursday, June 5th, 2008

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)! :)

iPhone desbloqueado e funcionando no Brasil

Wednesday, August 29th, 2007

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… :)

Como fazer print screens no Mac OS X

Saturday, July 14th, 2007

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.

Configurando cores no Terminal.app

Saturday, July 14th, 2007

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.