thegoodfellas/blogset-br huggingface dataset:
A 89 edicao do Oscar ocorreu com suas tradicionais apresentacoes e desfiles de astros do cinema. Este as questoes politicas sempre a tona por causa do atual presidente dos USA; o apresentador fez piada referente a ele, a questao de sua intensa fala pelo twitter e com Maryl Stripper que ele (presidente) tinha criticado. No final da premiacao, por um erro que nao foi muito bem esclarecido, La la Land tambem foi anunciado como melhor filme, toda a equipe chegou a subir no palco, mas logo em seguida foi retificado que na verdade Moonlight: Sob a Luz do Luar era o verdadeiro vencedor da noite. Melhor filme: Moonlight: Sob a Luz do LuarMelhor ator: Casey Affleck Manchester A Beira Mar Melhor atriz: Emma Stone La La Land Cantando Estacoes Melhor Diretor: Damien Chazelle La La Land: Cantando EstacoesMelhor ator coadjuvante: Mahershala Ali Moonlight: Sob a Luz do Luar Melhor atriz coadjuvante: Viola Davis Um Limite Entre Nos Melhor roteiro original: Manchester A Beira Mar Melhor roteiro adaptado: Moonlight: Sob a Luz do LuarMelhor figurino: Animais Fantasticos e Onde HabitamMelhor filme em lingua estrangeira: O apartamentoMelhor documentario: O.J.: Made in AmericaMelhor documentario em curta-metragem: The White HelmetsMelhor curta-metragem: SingMelhor animacao: ZootopiaMelhor curta-metragem de animacao: Piper: Descobrindo o MundoMelhor figurino: Animais Fantasticos e Onde Habitam Festa das Criancas Festa das Criancas Festa das Criancas Festa das Criancas Ano passado tive a famosa materia de Sistemas Operacionais na Poli e o que posso dizer sobre essa experiencia? Me apaixonei totalmente! Pude conhecer sistemas operacionais e suas entranhas. Munido dessas informacoes, resolvi deixar para tras meu (ru)Windows. Faz entao um ano que eu uso linux, para ser mais exato, Ubuntu. E como todo bom usuario de Linux, sempre tenho uma janelinha do shell aberta.Usar o shell desde entao tem sido uma otima experiencia, tanto para aprender mais sobre o Linux quanto para aumentar minha produtividade. Dito isso, eu resolvi participar de um meme postado pelo ArthurGeek. A ideia e ver os comandos que voce mais usa no seu shell. Entao, maos a obra!Basta voce executar o seguinte script para ver seus comandos mais usados:history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | headMeu resultado foi o seguinte:181 git47 rake33 git-log25 cd23 git-svn15 sudo14 ls14 git-commit11 ./script/console11 geditDeu pra ver que uso bastante o Git e o rake. Isso porque meu dia a dia envolver basicamente programacao com Ruby on Rails e o Git para me dar mais felicidade (SVN :p).E voce, como e seu dia a dia com o shell? No meu ultimo post eu falei sobre Podcast, o que ele e, para que serve e como pode ser util ou divertido para voce.Coincidentemente criaram um video bem legal explicando o que e um Podcast de um modo mais cool =)O video e este logo abaixo:Esse video e mais um dos videos explicativos do pessoal da CommonCraft. Eles tem videos bem legais sobre varios assuntos e aplicativos ligados a web. Vale a pena dar uma olhada!Fica a dica ;) Ola leitores! Inicialmente, um feliz 2008 para todos. Que voces possam fazer
todo dia aquilo o que gostam de fazer de verdade, isso e a melhor coisa que se pode ter na vida.Esse post na verdade e um daqueles textos que voce coloca o que gostaria de realizar ao decorrer do ano. Quem me passou essa bola foi o Rodolfo Sikora. Ja faz um certo tempo que eu deveria ter escrito esse post, mas antes tarde do que nunca!Como alguns de voces ja sabem, eu tenho alguns planos de dominar o mundo, hehehe, brincadeira. Tenho planos de construir uma startup, centrada no desenvolvimento de produtos "web 2.0". Entao uma das coisas que espero (e vou realizar) desse ano, e que nosso projeto (eu, Mario Nogueira, George Guimaraes, Jose Valim) va para frente e que possamos lancar aplicativos web que tornem as vidas das pessoas mais praticas e divertidas (por que nao?). Final do ano passado lancamos o Pagestacker, um aplicativo de bookmarks on line com o diferencia principal de fazer full text search. Desde entao tem sido uma otima experiencia desenvolve-l0 e mante-lo no ar. Nada melhor do que voce ouvir elogios de seus usuarios! (criticas tambem sao bem vindas)Nos ultimos meses trabalhei direto de casa, por isso me tornei um tanto sedentario (mais que o de costume durante toda a faculdade). Por isso uma das coisas que quero esse ano, e me exercitar mais, fazer academia, cuidar da minha saude fisica. Afinal, para construir tudo que quero, antes de tudo preciso ter saude.Este ano deve ser muito importante para mim e promete muitas novidades. Fiquem ligados, tem muita coisa boa vindo por ai!
Pessoal, alguns de voces ja devem saber, mas nem todos. Faz 5 meses que eu e mais 3 amigos do Pagestacker fundamos uma outra empresa, a Plataforma Tecnologia.A Plataforma Tecnologia e uma empresa de consultoria em desenvolvimento de sistemas web, focada em Ruby on Rails. Nosso time de engenharia e formado por desenvolvedores com forte background academico (todos da Escola Politecnica da USP). Alem disso, temos alguns dos melhores Railers do Brasil, incluindo o Jose Valim, que (nesse exato momento) e o 9 10 maior commiter do Rails de todos os tempos e o 4 maior comitter do Rails durante esse ano. Isso deve mostrar que nao estamos brincando =).Enfim, o que isso muda na vida de voces que sao meus leitores? Bem, a partir de agora todos ou a maioria dos meus posts relacionados a desenvolvimento de software vao ser feitos no blog da Plataforma. O blog da Plataforma comecou muito bem e com uma otima qualidade de posts. La voces irao poder ler posts com beeeem mais frequencia que os deste blog.Minha sugestao e que voce va ate o blog da Plataforma e assine o feed! Alem disso, nao deixe de olhar o site da Plataforma e avise seus amigos e companheiros de trabalho sobre nossa empresa =D. Como eu ja mencionei antes aqui, eu sou um dos criadores do Pagestacker, um aplicativo web onde os usuarios podem guardar suas paginas favoritas da web para referencia futura e tambem para pesquisar o conjunto de todas as paginas guardadas pelos demais usuarios (mas de forma completamente anonima, isto e, sem identificar quem guardou cada pagina).Uma funcionalidade frequentemente solicitada pelos nossos usuarios, e que desenvolvemos recentemente, era a possibilidade de se enviar por email paginas guardadas na propria conta, diretamente de dentro do Pagestacker.Para que essa funcionalidade ficasse realmente util, era necessario que ela viesse acompanhada da funcionalidade de auto-completar, que oferece nomes e enderecos de email de destinatarios para o usuario enquanto ele preenche o campo correspondente a essa informacao no email, mostrando possiveis complementos para o que ele vai digitando. Se uma das sugestoes for a que ele queria usar, basta clicar nela para terminar de preencher o campo.Parece pouco, mas e algo que traz uma enorme economia de tempo, incentiva a recorrencia do envio de paginas via email e que faz muita falta depois que voce a experimenta.De fato, trata-se de uma funcionalidade presente nos principais servicos gratuitos de email na web hoje em dia. Nao fazia sentido, portanto, oferecer uma experiencia de envio de conteudo via email sem ela, ou seja, uma experiencia de uso inferior aquela a que muitos dos nossos usuarios ja estao acostumados.Bom, para que o auto-completar funcione, e preciso que o usuario primeiro crie uma lista com os nomes e os enderecos de emails dos seus destinatarios. Pedir ao usuario que preencha essa lista, nome por nome, tambem nao faz sentido.Por outro lado, e provavel que o usuario ja tenha uma lista dessas em sua conta de email. "Legal!", pensamos, "Vamos dar um jeito de o usuario poder importar essa lista para o Pagestacker!".O
Problema Uma forma cada vez mais comum de se fazer isso e pedindo ao usuario que forneca seu endereco de email e a senha dessa conta de email. Dai, o servico em que o usuario forneceu esses dados pode enviar um programa ate a conta de email dele e copiar essa lista de contatos.Redes sociais como o MySpace, por exemplo, fazem isso o tempo todo a fim de "ajudar" voce a trazer seus amigos para o servico deles.Nesses casos, o servico em questao sempre diz que o usuario pode confiar porque a senha nao sera armazenada. Sua senha e apenas "emprestada" por uns instantes enquanto o processo de importacao e realizado.Alguem acha que ha um problema serio com essa abordagem? =)O que voce pensaria de alguem que pedisse sua conta no banco ou as chaves da sua casa para pegar alguma coisa la pra voce, ainda que com a garantia de que essa senha nao seria armazenada ou que nao seriam feitas copias das suas chaves?Bom, por mais honesto que um servico como o MySpace possa ser (e eu nao tenho razoes para duvidar de que seja mesmo), ninguem deveria ensinar para os usuarios que e ok "emprestar" sua senha, de qualquer servico que seja, para sites de terceiros por ai, mesmo que seja para realizar uma tarefa util para eles. Nao e possivel garantir que todos os sites em que o seu usuario possa vir a ter essa informacao solicitada no futuro serao idoneos.Quando o usuario entrega essa informacao, ele fica impotente. Ele nao tem como verificar com absoluta certeza que a sua senha nao foi usada para acoes nao autorizadas ou que ela nao foi armazenada.Se o servico que pede ao usuario a senha da conta de email dele afirma sinceramente que nao usara essa senha para nada que o usuario nao autorize, o correto seria fazer isso de um jeito em que, mesmo que o servico tentasse violar essa confianca, nao conseguisse fazer isso.Deve haver uma forma de fazer isso e colocar o usuario no controle da situacao, respeitando sua privacidade.Solucao: Autenticacao Delegada Ao usar a funcao de importar sua lista de contatos da sua conta de email para o Pagestacker, o usuario e direcionado para o proprio servico de email em que ele mantem sua conta. Ao chegar la, o servico avisa ao usuario que o Pagestacker pediu para importar a lista de contatos dele e pergunta se ele autoriza a acao.Se o usuario decidir autorizar, e o proprio servico de email quem pede a senha da conta de email do usuario. Repetindo: o usuario so precisa informar a senha da conta de email dele para o seu proprio servico de email.O Pagestacker nunca fica sabendo qual e a senha do usuario.Dai, o servico de email envia a lista de contatos para a conta do usuario no Pagestacker e encerra essa conexao com o Pagestacker. Nenhuma outra informacao pode ser trocada entre o servico de email e o Pagestacker sem uma nova autorizacao do usuario.Esse processo e chamado de autenticacao delegada. O usuario delega ao seu servico de
email a tarefa de verificar que a solicitacao do Pagestacker e autentica, isto e, feita a pedido do proprio usuario.E como o usuario pode confiar que e exatamente isso que esta acontecendo?Bom, todo o processo e na verdade uma funcionalidade oferecida pelo servico de email do usuario. O Pagestacker apenas segue as regras que o sevico de email tiver estabelecido para realizar essa acao. Se o usuario ja confia no servico de email para mediar e armazenar suas comunicacoes particulares, nao ha razao para nao confiar nele para mais essa funcionalidade.Por essa razao, o Pagestacker so pode oferecer essa funcionalidade para servicos de email que tambem ja a oferecam. No momento, sao apenas 3: Gmail, Yahoo Mail e Hotmail (MSN e Windows LIve tambem).E como confiar que a tela em que o usuario informa a senha e mesmo uma tela do seu servico de email?O usuario deve sempre verificar o endereco da pagina que o seu navegador mostra para ter certeza de que esta mesmo no lugar certo e nao em um lugar "disfarcado" como uma tela de seu servico de email a fim de maliciosamente roubar sua senha.Para programadores: como fizemosNesse trecho final deste artigo, eu descrevo como desenvolvemos o software que realiza o que eu descrevi acima. Se voce nao e programador, dificilmente achara interessante. Basta lembrar que voce pode importar sua lista de contatos para o Pagesatcker sem deixar o Pagestacker saber sua senha de email. =)Bom, a melhor forma de se implementar a autenticacao delegada e atraves do protocolo OAuth. Trata-se de um protocolo aberto, isto e, que todos podem usar gratuitamente e cujo funcionamento exato e de conhecimento publico (o que nao significa que ele possa ser violado). O objetivo de seus criadores e fazer dele um padrao, usado por todos os desenvolvedores. Quanto mais adeptos, mais simples fica para desenvolver aplicativos que possam estabelecer autenticacao delegada entre si, uma vez que basta implementar sua especificacao a fim de se alcancar compatibilidade praticamente universal.Otimo, nao e? Sim, mas infelizmente nenhum dos 3 servicos de email com quem o Pagestacker estabelece autenticacao delegada "conversa" atraves do OAuth. =)Cada um deles implementou sua propria forma de autenticacao delegada, obrigando-nos a ter 3 vezes o trabalho que teria sido necessario caso todos eles seguissem um mesmo protocolo (de preferencia, um que ja fosse usado por tantos outros desenvolvedores quanto possivel, como o OAuth).Pra comecar, procurei saber se ja havia alguma implementacao disponivel na web de clientes que consumissem essas diferentes API's (reuso de codigo e uma virtude, meu amigos =D).Depois de uma boa pesquisa, achei uma biblioteca chamada Contacts, dentro do Github. O problema e que ela implementava cliente apenas para consumir a API do Gmail. Logo, tive que construir os nossos clientes para Yahoo Mail e Hotmail (e MSN e Windows Live)!Como resultado disso, fiz um fork do projeto Contacts do Mislav. Dentro do meu fork, eu implementei clientes para a API do Hotmail (que tambem servem para MSN e Windows Live) e para a API do Yahoo. Alem disso, adaptei um pouco melhor o cliente da API do
Gmail para os nossos requisitos. Fiz o projeto inteiro em Ruby e e totalmente open source.ProgramandoAgora vou mostrar um exemplo de como e facil usar o projeto que desenvolvi para importar contatos do Yahoo. Antes de tudo, faca download ou git-clone do projeto que esta aqui.(os codigos publicados abaixo so sao visualizados no proprio blog, nao e possivel visualiza-los no seu leitor de feeds)1. Primeiro, registre sua aplicacao aqui. Basta seguir os passos e anotar uns dados de que vamos precisar depois: o seu appid e seu secret.2. Depois, basta configurar o arquivo config.yml que esta dentro do projeto Contacts com os dados do cadastro de sua aplicacao dentro do Yahoo.3. Agora voce deve usar o codigo abaixo para gerar a Authentication URL. Essa e a URL que voce deve mostrar para seu usuario. Ao clicar nela, o usuario sera redirecionada para o Yahoo, onde ele ira precisar logar.4. Apos logar no Yahoo e dar permissao para sua aplicacao acessar os contatos do Yahoo, o Yahoo ira redirecionar o usuario de volta para sua aplicacao. Ele fara isso via um HTTP Get. No path dessa requisicao esta a token necessaria para importar os contatos de e-mail do seu usuario.Pronto! Isso e tudo que voce precisa para poder importar os contatos do seu usuario. Assim voce evita fazer screen scraping, o que evita tambem a necessidade de refazer seu trabalho sempre que algum dos servicos do qual voce importa dados faz qualquer alteracao em seu layout de tela e, principalmente, voce respeita a privacidade dos dados do seu usuario.Como eu disse, todos os codigos acima estao disponiveis como software open source no Github.E assim que o Pagestacker faz! Nos vamos a fundo a fim de oferecer a melhor experiencia de uso para os nossos usuarios, sem comprometer a sua privacidade.Gracas aos conceitos de OAuth, autenticacao delegada e uma boa engenharia por tras do codigo do Pagestacker, voce ja pode compartilhar suas paginas salvas de um modo facil e pratico. =)Ultimas observacoesO Pagestacker oferece tambem a funcionalidade de importacao de paginas favoritas previamente armazenadas no navegador do usuario alem de importacao de um outro aplicativo web chamado Delicious. Nesse segundo caso, e necessario o fornecimento da senha da conta do usuario no Delicious.O fornecimento dessa senha e realizado dentro do Pagestacker.O que e isso? Uma incoerencia?Na verdade, nao.O Pagestacker nao faz screen scraping da conta do usuario no Delicious. O Pagestacker usa a API que o proprio Delicious oferece para essa finalidade. E tudo feito de acordo com as regras do Delicious.E o Delicious que nao oferece suporte a autenticacao delegada, seja atraves do protocolo OAuth ou de um macanismo proprio. Como afirmei acima, o Pagestacker so pode estabelecer autenticacao delegada com sites que tambem oferecem esse recurso.Nos adorariamos que a API do Delicious funcionasse atraves de autenticacao delegada. =)No entanto, entre nao oferecer a funcionalidade de forma nenhuma ou seguir as regras da API do proprio Delicious, acreditamos que e do melhor interesse dos nossos usuarios ficar com a segunda opcao (e e claro, os usuarios podem confiar que o Pagestacker nao armazenara
Ola leitores! (pelo menos os que sobraram). Faz tempo que eu nao posto por aqui, mas a frequencia de atualizacao desse blog nao reflete exatamente a minha interatividade com a web. Na verdade, nao reflete nenhum um pouco. Eu vivo da web! Leio todos os dias meus feeds, me divirto assistindo videos no youtube, estudo pela web e alem de tudo, a web tambem e meu trabalho.Sem mais delongas, vamos falar de podcast. O que e isso? (sim, muita gente nao sabe o que e, na verdade, quase todo mundo). Podcast e um programa de audio (tipo um programa de radio), que voce pode fazer download e ouvir a hora que quiser. Ou seja, digamos que voce gosta de ouvir o programa do Panico da Jovem Pan, mas ele so passa no horario do almoco e voce nao pode ouvir nesse horario. O podcast e a solucao para o seu problema. Voce pode ir no site da Jovem Pan, baixar o podcast do Panico (isso se a Jovem Pan for esperta...) e ouvir a hora que quiser no seu computador ou no seu MP3 player (de preferencia um iPod).Otimo, podcast entao e algo muito legal! Mas como faco para saber quando sair um novo episodio do meu podcast preferido? Facil! Basta voce assinar o feed do podcast que voce quiser. Isso pode ser feito pelo iTunes ou por qualquer outros programa/aplicativo que tenha a funcionalidade de assinar feeds.Certo, quero ouvir e acompanhar um podcast, mas onde posso encontrar podcasts legais? Bem, existem alguns diretorios e mecanismos de busca de podcast, mas acho que o melhor lugar para achar um podcast mesmo, e com seus amigos. E foi atraves de conselho de um amigo meu que comecei a ouvir o melhor podcast do mundo!Finalmente a razao desse post, o Nerdcast! O Nerdcast e um dos dois podcasts que eu acompanho. E um podcast de humor, ponto. Mas com algumas pitadas nerds, coisas como: senhor dos aneis, blogs, video games, entre outros temas. Mas a melhor coisa de ouvir o Nerdcast sao as risadas que ele vai te proporcionar. Se voce ver alguem na rua, ouvindo seu iPod, e rindo sozinho... com certeza e mais um feliz ouvinte do Nerdcast! Para se ter uma verdadeira ideia do humor do Nerdcast, voce tem que ouvir o classico episodio de carnaval. Depois de ouvir esse episodio, duvido que voce nao va querer ouvir mais um.Alem do Nerdcast, tambem ouco o Rails Podcast Brasil. Um otimo podcast para quem gosta das ultimas noticias de Rails, do mundo que circula esse otimo framework e do que esta rolando no mundo da web em geral.Por fim, o melhor momento para se ouvir um podcast, na minha opiniao, e quando voce esta no transito ou caminhando para algum destino. Voce ouve o podcast, se entrete ou se atualiza das noticias e nao perde o tempo que fica ocioso, seja no onibus, no carro ou andando. Sei que nao escrevo faz um bom tempo, por isso mesmo estou me aproveitando de um video (muito bom!) que acabei de ver, para ter
desculpa (e conteudo) para blogar.Assista ao video e reflita um pouco. Alem do George Carlin ser muito engracado, nesse video ele tambem fala coisas bem interessantes que nos fazem pensar um pouco. Como eu adoro esses videos que nos fazem relfletir e em especial achei esse muito bom, resolvi compartilha-lo com voces. Ai vai:
Neste ultimo sabado (17/11/2007) ocorreu um evento chamado RejectConf SP'07, no IME-USP, de 12:00 ate mais o infinito e claro que eu estava la! O RejectConf foi um evento da comunidade de Rails, para a comunidade de Rails, desde o desenvolveder iniciante ate o avancado. Eu gostaria de dar os parabens ao Akita pela iniciativa de organizar e orquestrar um evento tao bacana como esse e tambem de agradecer ao pessoal do IME-USP e da Caelum pela infra-estrutura e pelo coffe-break.O evento foi estruturado em diversas mini-palestras de em media 30 minutos. Algumas palestras que mais me chamaram a atencao foi a palestra do Danilo Sato com RSpec e Rails, a palestra do Felipe Giotto com Rails para aplicativos Desktop e a palestra do Fabio Kung com JRuby Compiler.Os leitores deste blog devem saber que eu e mais 3 amigos construimos um aplicativo chamado Pagestackr. O George Guimaraes, um dos desenvolvedores desse aplicativo, tambem fez uma palestra bem legal. Ele falou um pouco da historia do Pagestackr no Rails Rumble e principalmente sobre os assuntos ligados a infra-estrutura de aplicativos web com Rails e questoes de escalabilidade. Foi uma palestra bem legal, abaixo voce pode dar uma olhada. | View | Upload your ownUm numero interessante comentado pelo Akita, no evento, e que o Brasil e a terceira maior comunidade de Rails no mundo, segundo o Working With Rails.Mas o mais legal mesmo do RejectConf foi descobrir que temos bastante gente interessada em Rails aqui no Brasil e bastante gente que manja mesmo do negocio. O Brasil sempre foi apontado como um pais com grande potencial em TI, temos que fazer valer isso.obs.: in off, agradeco ao Roudi por ter me dado o prazer de brincar pela primeira vez com um iPhone (o dele, claro). Roudi, vou precisar te encontrar mais vezes, fiquei viciado no teu iPhone! Antes de tudo, me diga sem pensar muito, voce conhece a empresa dona deste logo?Voce pode ate deduzir (obviamente) que esse logo e da Apple, mas se voce nunca tinha visto esse logo ate hoje, nao se preocupe, eu tambem ja estive nesse clube. Esse foi o primeiro logo da Appple.Descobri esse logo atraves de um dos ultimo livros que li, chamado Apple Confidential 2.0. Uma leitura obrigatoria para qualquer pessoa que se diga fa dessa grande empresa.O livro cobre de modo jornalistico toda a historia da Apple, desde quando ela e fundada ate a volta de Steve Jobs para a empresa, em 1997. Quando eu falo jornalistico, quero dizer que o livro nao apenas conta historia, ele e um apanhado de todos os dados possiveis que comprovam cada palavra escrita e elucidam cada fase da Apple. O livro contem muitos quotes de todas as pessoas envolvidas nessa historia, memorandos que circularam dentro da empresa, e-mails do proprio Bill Gates para a Apple e timelines bem especificos de cada fase que a Apple passou. Com certeza deve ser o Livro mais rico em informacoes jornalisticas sobre toda a historia da Apple.Alem de ouvir sobre a Apple, voce vai poder conhecer tambem um pouco do que