As três eras do computador

 evolution of geektambém escrevi este artigo em inglês, no medium.

Recentemente li o livro A cabeça de Steve Jobs – Leander Kahney, e vi uma informação super interessante: Jobs concluiu que o computador teve, nos últimos 30 anos, 3 eras de ouro.

A primeira era começa em meados da década de 1980, com a criação de softwares de planilha eletrônica e processamento de texto, essa foi a era da produtividade; Essa era durou cerca de 15 anos até o início da nova era, no início dos anos 1990: a era da Internet; Essa era evoluiu até chegarmos na terceira era de ouro do computador: A era do estilo de vida, onde os computadores deixaram de ser produtos e passaram a fazer parte da experiência de vida de seus usuários.

Ler isso foi muito bacana pra mim, principalmente porque cruzei essa informação com outra que ouvi de um professor. Certa vez em uma aula comum, meu professor nos disse que toda tecnologia tem três etapas de evolução, geralmente ela nasce com o intuito de guerra, depois passa para o ecossistema comercial, até amadurecer o bastante para chegar ao nível do entretenimento.

É possível enxergar essas 3 etapas de evolução no avião, no carro, em certos armamentos (que hoje são usados para caça),  e com certeza na computação. Jobs ainda conclui a ideia falando que o computador hoje é uma espécie de HUB digital.  Segundo ele, nós temos câmeras digitais, mp3 players (na verdade ele só lembrou o iPod), e a internet, tudo isso troca conteúdo entre si usando o computador como base.

Essa declaração foi no início dos anos 2000, e como você pode ter percebido, está um pouco defasada. Hoje o computador ainda tem papel de hub digital, mas os smartphones estão cada vez mais tomando este papel. Nós temos câmeras digitais, mp3 players e internet tudo no celular. E ainda aplicativos que permitem tratar a informação recebida ou enviada.

Hoje o mundo vive uma era da Integração Vertical, onde hardware, software e serviço estão interligados de maneira magnífica. Se você comprar (quase) qualquer aparelho eletrônico, ao ligá-lo, será pedido uma conta, e através dessa conta (quase) tudo que for seu ficará personalizado à você. Isso acontece com celulares, tablets, computadores (principalmente Windows), algumas câmeras, tudo isso está interligado via login/senha.

Eu penso que o ‘i’ da Apple (iPhone, iPad, iMac, iPod) queira dar a ideia de Eu+aparelho, enfatizando o lance do estilo de vida, mas parece que, cada dia mais, existe um EU virtual, cada vez mais personificadamente real, porém virtual, em algum lugar na nuvem da internet, ao ponto que, ela por si só, nos define.

Dica: Upload de arquivos no Google Drive

Já pensou na idéia de seu app poder fazer upload de um arquivo no Google Drive de quem tá o usando? Eu não só pensei como precisei, e é por isso que estou escrevendo esse post. A plataforma Drive, disponibilizada pela Google, vem com uma série de API’s e exemplos de código em diversas linguagens para tornar fácil a comunicação de qualquer tipo de app com o serviço.

drive

É claro que as fucionalidades principais desta plataforma são download e upload, e será colocado abaixo um mini tutorial para criação de um script PHP de upload de arquivos.

1. Habilite a API Drive

O primeiro passo de tudo é criar ou selecionar um projeto no Google Developers Console e habilitar a API. Depois é só ir na seção APIs & auth, depois em API e verificar se a API Drive está ativa. Depois vá em Credentials, e clique em Create new Client ID e escolha a opção Installed Application.

2. Obtenha a biblioteca cliente da API Google

A versão mais nova da biblioteca Google pode ser baixada pelo github:  google-api-php-client e você precisará copiar a pasta src/Google para sua aplicação.

3. Oauth2

O exemplo de upload mostrado no tutorial da google utiliza uma versão mais antiga da autenticação. Nós iremos utilizar uma nova versão que consiste em três passos: primeiro a aplicação pede acesso ao usuário, depois o usuário concede o acesso, depois nós usamos esse código acesso nas próximas vezes.

Exemplo:

Você pode utilizar um código parecido com o que eu usei, ele foi criado para ser executado em linha de comando, e armazena o token em um arquivo de texto simples. Veja o código no Github da Tribo do CI.

Agora que já temos uma noção da API, podemos dar uma olhada na sua referência para incrementar um pouco mais no código.

Front in BH 2014: Eu Fui!!!

Resumo Frontin BH

Obs: este artigo pode ser lido em inglês em: https://medium.com/@sheldonled/frontin-bh-2014-66b5a1178b28

Já tem um certo tempo que estou focando meus estudos em tecnologias front-end, e nada melhor que eventos/conferências/workshops/etc para nos manter atualizados. Quase não estou saindo da terra do pequi para me aventurar em eventos, e percebo que estou fazendo uma média de 1 evento por ano.

Em 2013 fui ao TDC SP (trilha de UX/Front-end), e aprendi muita coisa legal. Pude levar minha esposa, e pude rever meu amigo e sócio deste blog, Relson. Esse ano foi a vez de ir para Belo Horizonte, prestigiar o magnífico FrontinBH. Foi a primeira vez que eu e minha amada fomos para BH, e deu pra curtir bastante esse fim de semana.

Planejamento ft. Ansiedade

Confirmei minha ida aproximadamente um mês antes do evento, porém só na sexta-feira que antecedeu o evento pude confirmar como e com quem eu iria. Convidei alguns amigos para ir ao evento, verifiquei a possibilidade de ir com alguns parentes, mas no fim fomos minha esposa e eu.

Chegamos em BH poucos minutos antes do evento, e ela ficou comigo no início, depois eu a levei ao hotel para descansar enquanto eu enfrentava chuva e a demora do metrô para chegar novamente ao Teatro Ney Soares e perder o início da palestra sobre TrackingJS. Fiquei um pouco perdido na cidade no começo do dia mas após umas caminhadas e com ajuda do GPS eu consegui ir e vir mais tranquilamente.

O Evento

Fiquei admirado com o evento. Ao mesmo tempo que eu estava em um auditório lotado, com centenas de pessoas que eu não conhecia, eu me vi ao lado de grandes mentes, pessoas que estão puxando a web pra frente ‘trocadilho alerts’, pude trocar idéias com pessoas que eu costumava ver no youtube, e tudo isso contribuiu bastante para minha experiência.

O evento nos deixou momentos alegres, como os momentos: “Livraria” e “Oxenti”, e o autor do primeiro pode me dar dicas bem legais sobre o mercado internacional e como treinar Inglês sozinho 🙂 Ele (Michael Lancaster) foi responsável por apresentar à platéia o Node Webkit, uma plataforma de desenvolvimento nativo usando tecnologias conhecidas por nós web developers.

A abertura do evento foi feita pelo incrível Bernard De Luna, uma pessoa já conhecida pelos seus projetos sexys, e a primeira palestra foi sobre frameworks de testes de UI, dos quais, os que mais me chamaram atenção foram: Jasmine, Qunit, Mocha, Buster e Karma. Outra palestra interessantíssima foi a dos caras da RC Comunicação sobre o workflow de desenvolvimento web (Design ?Implementação). Nessa palestra, destacou-se o poder do Webflow.

Como eu disse acima, perdi algumas palestras, pois fui almoçar próximo ao hotel, fazer check-in e guardar minhas coisas. Cheguei no meio da palestra sobre TrackingJS, um framework incrível que possibilita reconhecimento de cor, de face e outras. Perguntei ao Zeno Rocha, na hora do lanche, se eles começaram a desenvolver isso com algum objetivo em mente, e ele me respondeu: “Não, e isso nem tem nada a ver com o nosso trabalho (na Liferay). A gente teve a ideia e começou a fazer”.

Falando em lanche, estava tudo muito bom 😀 e eu pude conhecer pessoalmente, como citei acima, caras que eu só via nas redes sociais. Conversei um pouco com Yamil Asusta, que palestrou sobre o incrível Browserify, uma ferramenta que permite trazer modulos do npm para o browser. Conversei também com o Felquis, sobre várias coisas, principalmente sobre meet ups e workshops.

No final da tarde tivemos as meninas do Github, falando sobre o poder dos Polyfills e o Mathias Bynens falando sobre Unicode no JavaScript. Dentre outras coisas que tiveram no evento e eu não citei aqui, só gostaria de terminar esse post com o principal conselho que ouvi no evento: “Agarre os desafios, só assim você vai crescer”.

Ansioso para o FrontinBH 2015 =)