Tag Archive: Opinião


Apple Developer

Muita gente tem odiado a Apple. Muita gente tem amado a Apple. Eu mesmo tenho uma relação dúbia com os produtos dela. Sou feliz proprietário de um Macbook e não vejo a hora de trocá-lo por um outro mais novo. Foi a melhor aquisição “computadorística” que fiz desde quando comprei um MSX (na verdade foi meu pai que comprou :D).

Mas no mundo ‘mobile’ a Apple tem feito coisas que não parecem boas para os desenvolvedores mas que certamente são boas para a Apple (ao menos no curto prazo).

Aqui no meu Macbook eu ainda posso desenvolver o que quiser, do jeito que eu quiser, quando eu bem entender e vender do jeito que eu achar melhor. Se isso mudar no futuro é óbvio que eu volto a usar Linux (Windows também não, né?). Até lá, me desculpem, mas o Ubuntu e o Mark vão ter que tomar muito toddynho até ter um produto de qualidade equivalente.

Mas o que eu quero falar nesse artigo é sobre o que eu penso que pode acontecer com as crianças e jovens dessa geração se esse tipo de postura da Apple se tornar um “padrão da indústria”.

Sou desenvolvedor desde os 9 anos de idade. Usei e aprendi a programar num clone do Apple ][ (TK-3000 da Microdigital e um Exato Pro da CCE). Vivi a era dos 8bits em sua plenitude. Sabia “tudo” do meu MSX e “quase tudo” dos computadores Apple. De instruções Assembly à pinagem de alguns CIs.

Isso foi importante na minha vida. E garanto que quem viveu as mesmas coisas naquela época ainda reverencia o que fazíamos ali. Essa época criou uma geração inteira de garotos capazes de abstrair conceitos, dividir um problema grande em problemas menores e a resolvê-los usando o raciocínio lógico.

O que aconteceria se a gente conseguisse reproduzir, para os nossos jovens de hoje, um ambiente similar ao daquela época mas com um hardware muito mais poderoso?

Pode ser que nem todos os jovens fossem se tornar desenvolvedores no futuro (na verdade isso seria péssimo) mas acho que raciocínio lógico, resolução de problemas e abstração são qualidades úteis para o exercício de qualquer tarefa. Certamente são muito mais úteis que escrever miguxês ou plantar batata no Colheira Feliz.

O Cory Doctorow aborda bem esse tema em um artigo no BoingBoing.

E isso nos trás de volta à Apple e aos termos sob os quais os seus produtos vêm sendo vendidos e disponibilizados para os desenvolvedores.

Máquinas seladas que são construídas de forma a ir totalmente contra as idéias dos construtores. Plataformas de desenvolvimento oferecidas somente a quem se dispuser a entregar sua alma. Proibições e permissões arbitrárias sob o direito de usar os seus produtos, etc.

Observando exclusivamente por essa ótica chegamos à conclusão de que Steve Jobs está negando o direito que ele e o seu ex-sócio Steve Wozniak tiveram de dominar de verdade os computadores. Obviamente isso me entristece.

Por outro lado tem a visão do John Gruber de que tem jovens desenvolvendo coisas bacanas para essas plataformas da Apple mesmo debaixo dessas limitações impostas. O Carlos Cardoso também comenta sobre um aspecto bacana dessa postura da Apple.

No mundo as coisas não são sempre brancas ou pretas, certas ou erradas ou bandidos ou mocinhos. Eu não acho que o excesso de medidas da Apple seja o ideal mas ao mesmo tempo eu entendo algumas das razões pelas quais eles agem desta forma.

Empresas são empresas e precisam dar lucro. Precisam aumentar a sua participação no mercado. Precisam “amarrar” (fidelizar não existe :D) os seus clientes de uma ou de várias maneiras.

A Apple também tem uma proposta clara e inequívoca desde que o primeiro Macintosh foi lançado: popularizar a tecnologia oferecendo alternativas de altíssima qualidade e fáceis de serem usadas por qualquer um. Sempre que eles desviaram disso se deram mal.

Por outro lado a figura do “Desenvolvedor de Software”, pra eles, nunca passou de um “mal necessário”. Freqüentemente os responsáveis por estragarem os seus produtos.

O pior é que isso é verdade. É duro, como desenvolvedor, admitir que eles tem razão.

Vamos a alguns casos práticos:

  • Levanta a mão quem nunca viu o seu navegador “capotar” ao abrir uma página com Flash? Achava que era problema no Safari, mas o mesmo acontecia no Firefox. O meu E71 (que roda Flash!) reboota 50% das vezes que abre uma página com Flash. Porque uma empresa que prima pela qualidade permitiria que seu celular ficasse desligando por conta de bugs no software dos outros?
  • Só quando a gente trabalha com desenvolvimento pra dispositivos móveis, como eu fiz, você percebe como é fácil acabar com a bateria de um celular com um código não-tão-bom-assim. Esse problema já foi arrumado, mas na plataforma Maemo a comunicação interprocesso era feita com o D-Bus. Sempre que uma mensagem era enviada via D-Bus ele ‘acordava’ todos os processos do dispositivo para entregar a mensagem. A CPU aumentava o clock, o consumo aumentava e o resto vocês já sabem. Porque você deve permitir que os desenvolvedores usem as APIs do seu aparelho de qualquer jeito se isso pode fazer com que a duração da bateria fique prejudicada?
  • No livro “A Cabeça de Steve Jobs” tem uma história que conta que o Steve Jobs queria que o primeiro Macintosh fosse feito completamente selado. A razão? A experiência deles com o Apple ][ mostrava que existia muitas placas de terceiros que, por serem mal feitas, causavam problemas em todo o sistema e geravam suporte para a Apple. A proposta do Macintosh não era atender a hackers. Os Macs não vieram selados, mas quando vi abrirem um na Conectiva deu pra ver que precisava de uma chave Philips um tanto… comprida.
  • Eu consigo navegar pela Internet à procura de pacotes .sis(x) pro meu E71 sem nem olhar pra tela do computador. Consigo até compilar um .sis(x) a partir do código fonte. Também consigo apertar em “Yes, Agree, Ok, Yes Again, I’m Sure, Ok, …” para instalar um programa nele. Mas peça pro seu pai fazer isso. Peça pra algum amigo seu, da sua idade, mas que não trabalhe com tecnologia fazer isso. Peça pro seu filho instalar um .sis(x) hospedado no Google Code. Entenderam o ponto? A Apple ofereceu um jeito fácil para todos fazerem isso e só quem trabalhou numa distribuição Linux e tentou criar um repositório “contrib” sabe que, para que as coisas funcionem bem, é necessário um certo controle. O da Apple é grande demais, mas os números mostram que tem funcionado mesmo assim.
  • O iPhone OS 4 tem suporte a multitarefa (pelo que eu li ainda é ‘limitado’) mas a ausência dela até o momento foi explicada com argumentos técnicos: consumo de bateria; um processo rodando em background consumindo muitos recursos e interferindo no funcionamento de outro (o navegador do E71, em background, tornando o uso do TwitS60 impossível); etc. Também tem as explicações de usabilidade: a presença de um gerenciador de tarefa, um processo travado, matar processo, etc. e tudo isso usando somente os dedos.
  • A Apple não lança produtos prontos. Ela lança produtos com o que está pronto. Essas restrições e limitações podem cair por terra no futuro.

Esses são alguns casos práticos que justificam a postura da Apple. Não se pode negar que eles são um tanto arrogantes demais colocar a culpa dos problemas em todos que não sejam eles, mas todos já sabiam que o Jobs é arrogante.

Como desenvolvedor e “hacker-wannabe” eu não gosto dessas restrições mas se eu fosse um cliente “comum” da Apple estaria bem feliz por ter uma empresa zelando tão bem da minha experiência com seus produtos.

Onde essas restrições não existem (meu Macbook) é possível apreciar a qualidade dos produtos Apple. Já para o meu filho eu já acho que um Arduino seria bem mais útil.

Update: O pessoal da 37signals acrescentou alguns pontos interessantes à essa discussão.

O que leva uma empresa a investir seu dinheiro no patrocínio de um atleta ou de um time em uma modalidade esportiva?

Eu consigo ver dois motivos. Um emocional: o empresário é um fã de tal modalidade esportiva; e uma racional: vinculação do nome da empresa à cultura do esporte e veiculação da marca da empresa na mídia.

Veja porque eu acho que os patrocínios esportivos podem diminuir no futuro.

Proibição na exibição de marcas

O comitê olímpico brasileiro (por conta de regras do comitê olímpico internacional) impede a veiculação de marcas dos patrocinadores ‘individuais’ dos atletas durante as olimpíadas.

Pois é. O atleta X é bancado, durante todo o ano pela empresa Y. Quando chega o momento da empresa obter o retorno pelo seu investimento, durante a cobertura das Olimpiadas, vê a sua marca substituída pela marca da Olympikus. Que durante todo ano sequer deu um tênis pro atleta treinar. Atleta que teve que comprar esse tênis com o dinheiro da empresa Y.

Tudo bem que não ficaria legal cada atleta com as marcas de seus patrocinadores no uniforme. Mas que a patrocinadora oficial realmente faça parte dos esforços de patrocinar esses atletas durante todo o ano.

Ocultação da marca na cobertura jornalística

Uma das equipes mais fortes de F1 neste ano é a Red Bull Racing. É esse o nome. Não existe uma equipe chamada RBR. Também não existe uma equipe VTR (ou VR). O nome dela é Virgin.

O que leva uma empresa que fabrica bebida energética a investir uma grana alta todo ano no automobilismo? A veiculação da sua marca e seu nome na cobertura do evento de fórmula 1.

Porque falam o nome da Renault, da Ferrari, da Mercedes, etc. Mas o da Red Bull não pode falar?

Essa palhaçada de ocultação de marcas na cobertura jornalística não acontece só na F1 não. Acontece em todo trabalho ‘jornalístico’ da Globo.

I Love You Jesus


Maicon… oferecimento “2” artigos esportivos.

Então a Nike vai lá e “morre” com a maior grana para patrocinar a seleção brasileira. E na hora de receber o troféu o desinfeliz vai lá e veste a camisa de trás pra frente (note.

Pra que isso? Custa deixa a camisa lá. Quieta? Não precisa “beijar” a marca da Nike, mas deixa ela lá.

Ou o cara faz um gol e, ao invés de comemorar com pulinho, dancinha, gritos, desabafos, e até mesmo com sinais obcenos, pega a camisa e levanta pra mostrar a linda mensagem de “All your jesus are belong to us”. E ainda toma cartão!

E eu vi um que tomou o segundo cartão por um desrespeito desse e acabou expulso de campo.

Sério: agradece o gol, passa a mensagem, faz a pregação evangélica-chata na entrevista coletiva. Lá no campo, respeita o teu time (não tomando cartão), tua torcida (comemorando de forma engraçada, alegre, feliz, …), e o patrocinador (simplesmente deixando a camisa no lugar).


Cafú: passando a mensagem de forma honesta

Aqui vai uma crítica para os clubes também: o que que é aquela camisa do Corinthians? Eu sou corintiano, mas aquilo lá tá uma esbórnia. Já vejo o Corinthians mandando os jogadores jogar de manga comprida pra caber o folheto de ofertas do “Supermercado Seu João”.

Porque Tumblr?

Como a idéia desse blog é a de ser despretensioso e aceitar textos “rápidos” eu optei por escolher um sistema que permitisse o envio de textos através de e-mail (sempre que ouço que o ‘e-mail’ vai morrer penso que eu morro junto :D).

Mandar o e-mail para o blog seria o mesmo que mandar um e-mail para todo mundo que tem interesse em ler o que tenho a dizer. Por isso o blog tem esse nome.

Ou, para os mais novos, seria uma espécie de Twitter com suporte à minha verborragia :D

Antes de optar por hospedar o e-mail público no Tumblr eu testei também o posterous. Funcionou bem e tem um conjunto de funcionalidades até maior que o tumblr. Temas mais feios também (apesar disso ter um peso muito pequeno na escolha).

O problema do posterous estava justamente aí: muitas funções.



Tumblr vs. Posterous

Eu tenho um problema conhecido, em inglês, por “Yak Shaving”. Fiquei horas ‘masturbando’ as configurações do posterous até que esqueci completamente o post motivador dessa experiência. Até hoje não lembro sobre o que era.

Já tinha ouvido falar do Tumblr e resolvi fazer uma nova tentativa de criar o tal blog “despretensioso” depois de ter lido o artigo “Why Tumblr is kicking Posterous’ ass”.

Realmente… é muito simples e fácil de usar e trabalhar. Funciona com e-mail (eu acho, afinal, esse post é o teste dessa função), tem um cliente pra celulares S60 (tenho um E71), e até mesmo um Widget pro Dashboard do Mac. Perfeito.

Update: Quase perfeito. Precisei editar o artigo para colocar a imagem com a ilustração. Se no posterous isso funciona satisfatoriamente (ele não permite especificar onde você colocará a imagem, apenas anexá-la no fim do post) aqui no Tumblr ele simplesmente “joga fora” todo o corpo do e-mail e coloca apenas a foto e usa o Subject do e-mail como ‘caption’ da foto. Tosco.

Ah! Os e-mails aceitam formatação Markdown, que eu já conheço bem de outras ferramentas que eu uso.

Update 2: Por conta da ‘grande migração’ do blog Pythonologia esse blog saiu do Tumblr e passou a rodar no bom e velho WordPress self-hosted.