Pegadinhas em enunciados de provas do Enem tem algum valor didático?

Não irei fazer o Enem, mas irei participar de um processo seletivo que possui alguns exercícios de Análise Combinatória. Decidi fazer este artigo porque, atualmente escrever sobre um assunto é uma das formas que eu encontrei de estudar. Seria apenas um fichamento, um rascunho que eu nem iria publicar, porém uma pegadinha em um dos enunciados me motivou a complementar um pouco o texto, com uma opinião pessoal sobre didática no ensino da Matemática.

malandro

Neste excelente vídeo, recebi uma importante dica: A primeira coisa que é importante ao se analisar um problema de análise combinatória é a seguinte questão: a ordem importa?

  1. Se sim, respondemos a nós mesmos (ahhã…). O que remete a: Arranjo!
  2. Se não, vamos de Combinação. (Olha a rima Lombardi….)

Mas o que seria um arranjo?

Vamos pegar o exemplo citado no vídeo. Quantos conjuntos de 3 valores distintos que nós podemos formar com os números {1,2,3,4,5}?

Pensando em algo mais palpável para vida real, quantos pódios de Fórmula 1 diferentes podem acontecer com 5 pilotos competindo (José, João, Chico, Huguinho e Luizinho)?  Veja que neste exemplo, a ordem importa.

  1. José em Primeiro, João em Segundo e Chico em Terceiro é um pódio.
  2. Chico em Primeiro, João em Segundo e José em Terceiro é outro pódio.

1280px-victory_podium

Como a ordem dos elementos importa (ahã) o arranjo será utilizado. A fórmula literal  do arranjo consiste em “a quantidade  n de elementos, tomados pê a pê, resulta no fatorial de n dividido por n – p“. No nosso exemplo n é a quantidade de pilotos 5 e p são os valores distintos 3. A fórmula resulta em :

formula_arranjo

Substituindo os valores, temos:

arranjo_completo

60 maneiras de montar um pódio com 5 pilotos em posições diferentes.

Agora e a combinação? Vamos imaginar a situação onde eu quero montar pódios onde a ordem dos pilotos não importa, não entra no cálculo. Apenas quero agrupar os elementos. Neste caso:

  1.  José em Primeiro, João em Segundo e Chico em Terceiro é um pódio.
  2. Chico em Primeiro, João em Segundo e José em Terceiro é o mesmo pódio.

Se a ordem não importa (Não!) vamos de combinação. E a fórmula da combinação basicamente é a seguinte: “A combinação de n elementos tomados pê a pê resultado num fatorial de n dividido por p fatorial vezes (n – p) fatorial“. Resulta nesta fórmula abaixo.

combinacao

Como no nosso problema o valor de n =5 e o valor de p =3, basta substituirmos para obtermos o valor de  10 combinações.

resolucao

Através deste exercício, vi basicamente que o lance da análise combinatória é conseguir identificar no enunciado quem é p e quem é n e depois jogar para as fórmulas. Agora  vou tentar reproduzir fielmente a questão do Enem que é passada no vídeo, apontar os problemas que tive para resolver essa questão e fazer uma análise do que eu acho a respeito dela.

Numa cartela com 60 números disponíveis, um apostador escolhe de 6 a 10 números. Dentre os números disponíveis, serão escolhidos apenas 6. O apostador será premiado caso os 6 números sorteados estejam entre os números escolhidos por ele numa mesma cartela.”

img_20161104_151248551_hdr

Cinco apostadores, cada um com R$ 500,00 para apostar, fizeram as seguintes opções:

  • Arthur : 250 cartelas com 6 números escolhidos.
  • Bruno: 41 cartelas com 7 números escolhidos e 4 cartelas com 6 números escolhidos.
  • Caio: 12 cartelas com 8 números escolhidos e 10 cartelas com 6 números escolhidos.
  • Douglas: 4 cartelas com 9 números escolhidos.
  • Eduardo: 2 cartelas com 10 números escolhidos.

Responda: Os dois apostadores com maiores probabilidades de serem premiados são:

  1. Caio e Eduardo
  2. Arthur e Eduardo
  3. Bruno e Caio
  4. Arthur e Bruno
  5. Douglas e Eduardo

cerebro-dentro-da-cabeca-humana_318-46850

Meu primeiro erro ao tentar resolver essa questão foi ao tentar achar o espaço amostral. Inicialmente imaginei n sendo 60 e os números disponíveis na cartela como sendo p. (antes do Ricieri eu tinha vergonha de assumir esses erros). Desta forma, para cada um dos apostadores eu teria uma combinação de 60 elementos tomados de p em p.

ID-100102290

Ainda não consegui respostas para o motivo desta abordagem não ser válida, mas após verificar a resposta no vídeo, fiquei me questionando se o quantidade de números disponíveis na cartela seria algo realmente necessário ao problema e reescrevi na minha mente o seguinte enunciado abaixo. Ao invés de números, usei novamente pilotos de corrida. Não muda nada no conceito, mas pelo menos para mim, ficou bem mais fácil de entender o que aconteceu.

Numa casa de apostas, é possível comprar diferentes bilhetes para tentar adivinhar os seis pilotos vencedores de uma corrida. Os bilhetes, lhe dão um leque de opções entre 6 a 10 pilotos. Cinco pessoas compraram as seguintes apostas“:

  • Arthur comprou 250 cartelas com 6 opções de pilotos.
  • Bruno comprou 41 cartelas com 7 opções de pilotos e 4 cartelas com 6 opções de pilotos.
  • Caio comprou 12 cartelas com 8 opções de pilotos e 10 cartelas com 6 opções de pilotos.
  • Douglas comprou 4 cartelas com 9 opções de pilotos.
  • Eduardo comprou  2 cartelas com 10 opções de pilotos.

Baseando-se se nos bilhetes comprados, quais apostadores terão mais chances de adivinhar os 6 colocados?

1

Você consegue concordar comigo que são os mesmos enunciados? Se o total geral de pilotos e o valor das apostas com menos ou mais pilotos não vai interferir no resultado por qual motivo eu vou citar essa informação idiota?

Agora que já estamos com um enunciado um pouco mais simples, vamos tentar calcular cada uma das apostas.

  •  Arthur : 250 cartelas com 6 números escolhidos
    • Se o cara comprou 250 cartelas, ele deseja que que sejam 6 números distintos. Porque senão ele vai pagar por duas cartelas, que fazem uma mesma aposta. (Ou seja, a ordem importa? Naaao – Combinação). Para resolver este problema teremos que usar combinações, mas pro caso do Arthur não será necessário o uso de fórmulas. Como cada aposta só terá 6 opções, os 250 cartões já virão praticamente marcados e o Arthur terá 250 chances de acertar os vencedores.
  • Bruno: 41 cartelas com 7 números escolhidos e 4 cartelas com 6 números escolhidos
    • Chegamos enfim na Análise combinatória. Se em cada cartela há 7 pilotos e o apostador só pode escolher 6, temos n = 7 e p = 6. Colocando nas fórmulas de combinação acima temos o valor de 7 multiplicado por 41 cartelas, somado a 4 cartelas de 6 pilotos que estarão completamente preenchidas: 291 chances de acertar os pilotos vencedores.
  • Caio: 12 cartelas com 8 números escolhidos e 10 cartelas com 6 números escolhidos 
    •  Aqui o mesmo caso n = 8 e p =6. Resultado 336 + 10 cartelas preenchidas = 346 chances disponíveis.
  • Douglas: 4 cartelas com 9 números escolhidos
    • Aqui sendo n = 9 e p = 6  temos 84 opções em cada cartela. Sendo 4 cartelas temos 336 chances disponíveis
  • Eduardo:  2 cartelas com 10 números escolhidos
    • Assumindo n =10  p = 6 chegamos no resultado de 210 chances para cada cartela. Sendo duas cartelas : 420 chances disponíveis.

Ou seja, Caio (346) e Eduardo (420) terão mais chances disponíveis de acertar.

 Valor didático das pegadinhas em Enunciados

Gostaria de fazer uma reflexão sobre o acontecido. Não sei quais os seus critérios para classificar alguém como inteligente, mas eu infelizmente não consigo aceitar que o critério de que colocar”pegadinhas” e “tumultuar” os desafios com informações inúteis possa ser um caminho para separar pessoas “inteligentes” de pessoas “não-inteligentes“. Neste problema de AC, a informação do preço das cartelas, quantidade de números disponíveis na cartela e o valor que cada sujeito tinha para apostar, poderiam ser descartadas tranquilamente. Isso foi colocado aí por pura sacanagem.

Eu acredito que esse tipo de coisa serve apenas para fazer as pessoas tomarem raiva da Matemática. E foi com uma grande alegria descobri que outras pessoas também acham a mesma coisa.

ID-100302051

Pelo que percebi neste caso aqui, a diferença entre uma questão simples e uma questão bastante complexa foi apenas a quantidade de informação desnecessária no enunciado. Partindo do ponto que na escola estamos preparando as pessoas para um mercado de trabalho cada vez mais exigente, não seria melhor tentar formar pessoas sucintas? Que sejam precisas ao apresentar informações?

Não sou professor e talvez identificar pegadinhas e retirar informações desnecessárias de um enunciado, seja uma demonstração de habilidade em interpretação de texto e análise do aluno.E até considero que os caras que elaboram provas pro Enem e exercícios de livros do ensino médio,  façam essas pegadinhas com a melhor das intenções.

Mas olhando os nossos resultados de Matemática no ensino médio, fico pensando: será que isso realmente gera bons alunos? Será que isso realmente tá funcionando? 

Monitorando o consumo de bebida alcoólica com Arduíno

Como já disse aqui uma vez, acredito que há duas formas de você interagir com alguém que está tendo um comportamento pouco saudável. Evidenciar as óbvias consequências ruins deste comportamento, prática que na grande parte das vezes, só causa irritação. Ou tentar ajudá-la a buscar as causas e apontar soluções.

beer

Muitos de nós brasileiros, possuem uma relação de amor e ódio com a bebida. Ela geralmente está presente em bons e maus momentos da nossa vida.

Uma vez que os pontos altos de festas e comemorações, vão acontecendo de forma gradativa (a música começa leve e vai ficando agitada…as pessoas chegam tímidas e vão ficando mais soltas…)  as vezes é difícil resistir a tentação de beber no mesmo ritmo do ambiente que você está.
champagne

Conselhos de pessoas próximas, para você maneirar no consumo, podem até ser eficientes. Mas…e se estivemos sozinhos ou com pessoas que não tenham tanta intimidade ou “tato” para dizer algo tão desagradável?

Estive pensando nisso esses dias, em como seria interessante ter a tecnologia para ajudar as pessoas a controlarem o consumo de bebida alcoólica e acabei brincando um pouco no Arduíno para construir um “Dispositivo Contador de Goles“. Gostei tanto do resultado que acho que vou ir até aprimorando o projeto!

Como componentes, utilizei um sensor Ultra Sônico, um Led, algumas peças de Lego e um Arduíno Uno. O funcionamento ficou bem simples: depois de tirar o copo da base por 4 vezes (valor para deixar o vídeo curto), o Led se acende. Veja o vídeo abaixo:

Antropologicamente é bem bizarro criar um dispositivo para contar quantas vezes você levantou um copo e te avisar quando você chegou numa quantidade x de goles.

Mas como experiência tecnológica, vou te confessar…é uma delicia. Conforme for fazendo aprimoramentos no projeto, vou postando aqui…Seria legal se conseguisse transformar isso numa daquelas bolachas de bar, mas isso é com o tempo..rs  🙂

3 Aplicativos que são a cara do Brasileiro

Você está ali…estudando Desenvolvimento Híbrido com  Angular, Ionic, React, Metor…ou se aventurando na desenvolvimento nativo com C/C++ e Java….Achando que com o sucesso do seu app vai te transformar num Nerd Super Star…alguém de vanguarda…dar entrevista no Roda Viva….

Daí vem um maluco…

paaahhh

Faz uma parada nada exigente em termos de layout, com uma usabilidade que estranhamente passa nas 10 heurísticas de Nielsen (mesmo sem o autor não demonstrar muito conhecimento de tais regras)…e as pessoas abraçam o aplicativo com bastante engajamento.

Raio Orkutizador

Não tenho muito contato com o mundo Apple (Iphone, Ipad, Ipod…) e não sei dizer como funciona a questão de público-alvo dos aplicativos de lá. Mas no mundo Android, percebi de um tempo pra cá, alguns aplicativos representam a nossa realidade Brasileira de uma maneira muito crua e as vezes até um pouco crítica. Fenômeno que, quando ocorreu em aplicativos como Instagram muita gente batizou de “orkutização“.

Essas mudanças de ponto de vista, além de gerarem zueiras fantásticas como essa aqui, resultaram em aplicativos muito curiosos como os 3 que irei listar abaixo. 

Criador Paaah

Se você participa de grupos de família, ou grupos de pessoas não-nerds…já deve ter recebido algum tipo de piadinha, usando o Meme “Paahh”.

Basicamente, o meme tem uma estrutura simples de “apresentação-tensão-conclusão“. Mostra uma situação, cria uma expectativa e concluí de forma quase sempre desastrosa.  

Apesar de não ser muito novo….este aplicativo me chamou atenção sem precisar de publicidade, anúncio ou indicação. Recebi a imagem com a marca-d’Água do app em grupo..carregado por uma pessoa que eu nem imaginava que soubesse o que era o Google Play e fui verificar o que era. 

Tela1

Mesmo tendo um monte de propagandas, o aplicativo e louvável no quesito usabilidade. São 3 campos de texto para você escrever, que depois geram uma imagem…simples assim.

Pode parecer absurdo mas há casos em que, a auto-sabotagem das pessoas interessadas num projeto é tão grande que até premissas simples como esta se tornam impossíveis de se transformar em software, por melhores que sejam os desenvolvedores.

Fogo Cruzado

Se você gosta de publicidade, propaganda e idéias criativas, quero te dar uma dica: separe algumas horas para ver as campanhas publicitárias (?)  da  Anistia Internacional.

Se eu já achava os caras fantásticos por coisas como o Twitter censurado quando fiquei sabendo que o Fogo Cruzado era uma iniciativa deles…tive que instalar no meu celular na mesma hora, mesmo não morando no Rio (foco do app, segundo eles mesmo fazem questão de assumir).

waze-do-pipoco

Infelizmente, se a iniciativa possui um site lindo e um viés de humor negro inevitável (a galera do Surrealista o batizou de Waze do Pipoco …kkkkk)  ela falha no quesito estratégia.

Com o perdão dos trocadilhos….a exigência do cadastro para utilização do app é um tremendo tiro no pé  e percebe-se que o público-alvo foi totalmente ignorado..

Dá a impressão que app tem mais a intenção de chamar a atenção de pessoas que possivelmente nunca viram um revólver de verdade na vida. (Não que isso seja ruim…mas eu acredito que dava para fazer as duas coisas…chamar a atenção e ser realmente funcional para pessoas que sofrem com os tiroteios). Uma pena. 😦 

Pipa Combate  

Não coloquei o link do Pipa combate aí no título, porque preciso te avisar uma coisa antes: contrariando qualquer regra de bom gosto….o site oficial possui áudio…e é um funk dos mais safados…kkkkk 

Mas vale a pena abaixar o volume do seu pc, para olhar essa maravilha.

Nos quesitos de Marketing,empreenderismo,desenvolvimento multiplataforma, perseverança e criatividade o Pipa Combate  todo é um espetáculo.

É simplesmente surreal que…um jogo de disputas entre pipas…com áudios do tipo “da liiiinhaa“…mais 10 milhões de downloads..kits para venda no Mercado Livre…disponível em várias línguas…em diversas plataformas..tenha somente um desenvolvedor envolvido.

pipa-1

Como é um jogo, eu sinceramente não tenho muitas condições de avaliar os prós e os contras deste app…..não é minha praia e eu posso falar um monte de bobagens.

Mas só de ver meus primos jogando.se divertindo com os áudios…e mais que tudo…se identificando com o app..acredito que ele tem muita qualidade.

E você? Já viu algum aplicativo Brasileiro super interessante e curioso como os acima?

Fui demitido, matei um impostor e até ganhei medalha

Pra manter minha “veia ágil”….há algum tempo estou com a vontade de fazer um artigo de retrospectiva do que aprendi nos últimos meses.

Iria esperar um pouquinho…aguardar alguns objetivos serem concluídos….mas um pequeno acontecimento (que eu explico durante o texto) me fez adiantar este artigo.

Aviso: texto longo…kkkk

ID-10091577

Emotivo ou prático?

Antes de começar, gostaria de expor um  dogma que sigo há um bom tempo. Não sou muito fã de fundamentalismos, mas até o momento ele foi tão assertivo que eu não consigo deixar de acreditar nele. Veja por si só:

As pessoas que sabem que você possui um problema, geralmente trazem dois tipos de conselhos:

  1.  O emocional, que as vezes é um pouco óbvio e não lhe ajuda muito.
  2.  O prático, que faz a pessoa que o está fornecendo parecer um pouco fria e distante, mas que pode ser exatamente o que você estava precisando.

Vamos usar um exemplo. Imagine que você é um gastador compulsivo, compra mais do que ganha, está sempre endividado e tal.

O sujeito dos conselhos emocionais, bem intencionado, vai vir com frases tipo “Você tem que parar de gastar“, “Pensa no seu futuro“, “Daqui a uns anos você vai ver como isso vai te prejudicar“, “Nossa você gastou isso tudo, em 3 dias?”.

ID-100302051

Já o sujeito dos conselhos práticos, também com boas intenções, vai chegar e perguntar:

  1. Você já pensou em procurar ajuda psicológica?
  2. Já leu livro X e Livro Y sobre Finanças?
  3. Já pensou em procurar uma consultoria sobre o assunto?

Isso é só um exemplo. Mas acho que vale a pena comentar sobre isso, porque este artigo dá um “caminho das pedras” das soluções que eu encontrei para resolver um problema pontual da minha vida. E apesar de ser um artigo bastante pessoal (e as decisões que você possa vir a tomar são totalmente pessoais) tenta dar as dicas da forma mais prática possível.

É claro, eu não sou o dono da verdade…rs. Então  enchi este artigo de links, pra mostrar de onde tiro os meus pontos de vista.

Síndrome do Impostor

Se você é desenvolvedor de software (iniciante ou experiente), acredito que em algum momento da sua vida, ficou perdido com o monte de possibilidades que essa profissão pode nos oferecer de ser alguém relevante:

  1. Ser empreendedor descolado, ficar bom em Business e deixar informática pro sócio –  (Como  Steve Jobs e Wozniak)
  2. Ser um cara super ligado em Ciência da Computação e Algoritmos pra tentar entrar para uma empresa muito  importante – (Quem nunca sonhou em trabalhar no Google)?
  3. Montar uma StartUp e criar um produto revolucionário – (Sabia que ICQ é Israelense)?
  4. Virar um hacker e fazer algo muito relevante para a humanidade – (Tipo se matar com 26 anos)
  5. Virar alguém presente na comunidade de software, de preferência bastante excêntrico – (Tipo o Richard Stallman)

A grande maioria de nós, costuma arriscar de todas as formas ser um pouquinho de cada uma das opções acima.

Daí cai na real e aceita a realidade: Ser apenas mais um cara que quebra a cabeça para gerar soluções e que na melhor das hipóteses vai deixar alguém que nem sabe seu nome completo, mais rico.

ID-100202153

Ok Cézar, mas qual o problema? Contadores, publicitários e Gerentes fazem isso todos os dias e não reclamam. Porque nós que escrevemos código, vamos sofrer mais com isso?

As respostas são muitas, mas gostaria de citar algumas:

  1. As vezes, o software que você ficou trabalhando por meses, mesmo sendo bom para c*, não é utilizado por NINGUÉM. Seja por razões de mercado, por burocracia ou porque o cliente que pediu o software, simplesmente gosta de jogar dinheiro fora.
  2. As vezes, o software que você fez com todo o carinho do mundo, onde você utilizou técnicas avançadissímas (estou utilizando Ajax galera, nem dá refresh!!!) se torna obsoleto em pouquíssimo tempo.
  3. As vezes, o software é vivo…está sendo atualizado o tempo todo…possui milhões de usuários conectados…mas é secreto..interno…. e você não pode mostrar para ninguém.
  4. As vezes, uma feature que você demorou um tempão para implementar, tem uma correção minúscula de outro membro da equipe…e esse sujeito estranho faz questão de abocanhar todo o crédito, para agradar um outro chefe mais estranho ainda.

Essas coisas são tão comuns que, exceto alguns dinossauros que tem a sorte de ter seus softwares escritos em Cobol e Clipper rodando por diversas gerações, a grande maioria de nós tem que sofrer um pouco até se acostumar.

ID-10081514

Sim…estou falando sério. O negócio é tão forte que ganhou até um nome: Síndrome do Impostor.

Este fenômeno foi explicado pelos gringos do Developer Tea aqui e mastigado em português com maestria pelo Daniel Filho neste podcast aqui (recomendo escutar com bastante calma depois de ler este artigo).

Além de ter vivido (e sofrido!) com a Síndrome do Impostor…achei interessante fazer este artigo porque estou vendo amigos entrando nela. E através de alguns links e algumas dicas irei tentar orientar quem pretende se preparar para fazer uma mudança profissional na vida e deixar esse negócio de impostor pro passado.

Matando o Impostor

26639_original

Depois de dar esse gigante spoiler do Talentoso Ripley, gostaria contextualizar um pouco minha situação.

Após ser demitido em uma empresa onde trabalhei, com excelentes lembranças, por 3 anos e receber um e-mail muito interessante, me comprometi a me preparar para trabalhar de forma remota e global,  para qualquer lugar do mundo.

Algo que a 37 Signals gosta de chamar de Nômade Digital.

O objetivo é ousado, e como disse lá em cima, não foi concluído ainda. Mas acredito que toda a experiência vivida nestes últimos 5 meses já me transformou bastante.

Resumindo bastante, a minha preparação consistia em:

  1. Tornar meu conhecimento sobre software público para todos
  2. Contribuir mais na comunidade de software.
  3. Aprender a me comunicar em Inglês

Esta é a forma emocional de descrever minha preparação. A forma analítica, racional e mais prática de conseguir estes objetivos vai ser destrinchada abaixo. Com links e tudo mais.

Sempre lembrando, estas foram as minhas escolhas…podem não servir para você.

Tornando o conhecimento público

E então eu me perguntei na época…Quais os Baby Steps para começar a mostrar para todo mundo o que eu sabia fazer?

Dica 1 – Tenha um blog

Você é um rapaz Latino Americano que ainda não tem um blog? Tsc, tsc…Que mancada. Este é o primeiro, mais rápido e mais fácil meio de começar a mostrar a sua voz para o mundo. Além de ser  muito menos visceral que montar uma banda punk, pode acreditar…na hora que você menos esperar, alguém de algum lugar que você menos imagina vai comentar sobre algo que você escreveu.

ID-10044057

Dicas para caso você nunca tenha tido um:

  1. Tenha no mínimo 3 links em seus post’s, apontando para mais conteúdo sobre o assunto que você está falando. Se não é possível arrumar 3 links sobre o assunto é melhor nem escrevê-lo. Este é uma das regras que eu usei neste artigo, por exemplo.
  2. Nunca publique um post ao acabar de escrever. Sempre há algo que pode ser alterado.
  3. Videos são  uma boa opção, mas no caso de tecnologia, para nós codificadores “o copiar e colar” é quase uma constante. Então, mesmo que você coloque uma vídeo aula foda no youtube, o sujeito vai querer pegar os trechos de código que você usou em algum lugar.
  4. Imagine que você pode usar o blog como “âncora” para estudar algum tópico com bastante foco. Por exemplo, eu estava precisando estudar sobre Design Patterns e HTML5. Tudo que estudei e todos os exercícios que fiz durante todo este tempo, estão disponíveis neste post e neste outro aqui. Ou seja, sempre que precisar dar uma revisada, meu blog serve como uma espécie de “fichamento” de estudo.
  5. No início, se atenha a princípios e não a tecnologias. Fazer um post sobre Algoritmos pode ser ter mais vida útil daqui a 5 anos do que falar sobre Docker por exemplo.

Dica 2 – Aprenda a brincar no Git

Apesar dessa carinha fofa, este troço é assustador para caramba no início. Apesar de já usar há um bom tempo….até hoje ainda não me garanto em alguns tópicos, como Rebasing.

Octocat

Mas calma….há alguns caras que podem nos ajudar…

Dicas principais:

  1. Dê uma olhada neste livro, totalmente em português e bastante didático.
  2. Separe algumas horas do seu sábado para esta série de vídeos do Fábio Akita
  3. Escute esse podcast da galera da Lamda3 .

É chato no inicio, muita linha de comando…mas uma coisa é certa…você NÃO vai conseguir entrar para o mundo Open Source se não souber pelos menos os conceitos envolvidos por trás de Branch, Tag, Trunk, Push, Pull, Commit, Issues e Pull Request.

Dica 3 – Procure um Projeto Open Source para participar

ruby

Aqui cabe uma atualização. Ao contrário do que disse em meu artigo anterior sobre Projetos Open Source, o Glimpse não foi a minha escolha final.E sim o…. Code Cracker!  (\0/\0/\0/\0/\0/).

Em breve um artigo sobre o motivo da mudança!

Voltando ao assunto, não sei qual linguagem você utiliza, mas vou te adiantar…se você não utiliza uma linguagem que tem uma comunidade extremamente ativa como a do Ruby On Rails é atualmente…ou como PHP e Java já foram no passado…encontrar um Projeto Open Source bacana é uma tarefa que exige um pouquinho de tempo.

Uma dica legal é: depois de aprender o básico de Git, aprenda pelo menos um pouquinho sobre licenças. Abaixo vão alguns links onde você pode ir “colocando o pé na água” do Open Source:

  1. Podcast super informativo da lambda3, falando sobre passado, presente e futuro do Open-Source. (Fresquinho, fresquinho)
  2. Se o Inglês não é o seu forte ainda, o pessoal da OPS é super receptivo., tudo lá é feito em português e a liberdade para usar linguagens e skills diversos é bem grande. Só de ter gente do calibre de Diego Aranha na equipe já valeria o ingresso. Mas tive notícias que até especialistas em Machine Learning se alistaram no projeto.
  3. Como já listei aqui, os sites Up-for-Grabs e Code Triage não foram muito úteis para mim, porém talvez seja legais para você. Não custa nada dar uma olhada.
  4. Se tiver com muuito tempo livre e ainda não se sentir seguro de assumir compromissos…apanhar do git…ou simplesmente tiver dificuldade em achar um projeto que se sinta confortável…Crie um e vá incrementando ele aos poucos. Eu comecei assim mas te recomendo…não é uma estratégia tão enriquecedora quando participar de algo em conjunto. Se pudesse voltar atrás, não teria escolhido este caminho de começar algo do zero sozinho, ou teria gastado menos tempo num projeto próprio.

Dica 4 – Participe de Desafios Online

No título deste artigo, eu disse que ganhei uma medalha certo?

ID-100257970

Bem não foi aqueeeela medalha, mas foi algo que me deu muito orgulho de participar. Me cadastrei no Site Hackerrank e após resolver alguns desafios com sucesso me dispus a conquistar pelo menos um badge de Algoritmos.

Mal sabia eu que o site é super sacana, porque se os desafios iniciais são levemente picantes, o último desafio antes de você conquistar o badge, é malagueta pura…kkkkk.

No meu caso foi, ninguém mais ninguém menos que, o assustador Snakes and Ladders que me forçou a ter que estudar um pouquinho sobre grafos e Busca em Largura.

Caso não se sinta a vontade com o HackerHank, eu recomendo verificar também o Code Chef que possui a interface um pouco mais cabulosa…mas permite uma gama enorme de linguagens e acredito eu que possui algoritmos um pouco mais generalistas.

Estas foram as dicas para você começar a tornar o seu conhecimento mais público. Agora como fazer para começar a contribuir na comunidade de Software?

Contribuindo na Comunidade de Software

Dica 1 – Participe de Eventos e Meetups

Gosto muito de eventos. Mas vou lhe confessar que na minha região, para mim, os Meetups tem sido mais proveitosos que os eventos. A razão é que nos Meetup’s o Networking rola um pouco mais solto, não sei bem como explicar. Se você não sabe o que são meetups eu recomendo entrar no site oficial e utilizar…simplesmente.

Parece ser uma dica um pouco óbvia se você já viu minhas outras postagens, mas se não conseguir encontrar um Meetup disponível na linguagem que você pratica (como aconteceu comigo).. vai na galera do Arduíno.

O Arduíno possui o “social” no seu DNA. Uma vez que sempre há uma ferramenta que você tem e o colega não tem e você acaba emprestando….pela facilidade de você criar coisas na hora…inventar idéias….é sensacional.

A única coisa que você precisa para começar é comprar um kit e começar a brincar. Parece lego! E dá para construir coisas sensacionais. No meu caso, o kit que eu comprei e que uso até hoje é este aqui.Infelizmente não tive tanta sorte com os Meetups de programação como Android, Git e Nodejs. Talvez tenha sido alguma falha minha..rs…vai saber.

Mais dicas:

  1. Escute este podcast da Lambda3 sobre eventos e comunidade
  2. Navegue neste Github com eventos e conferências no Brasil.

Dica 2 – Grupos nos Slack

Além do Meetup, uma outra ferramenta que eu achei legal de conhecer durante esse meu período sabático foi o Slack. Porém, verdade seja dita: é um pouco confuso as vezes. O que eu faço é de vez em quando, para dar uma relaxada… entro no Brasil.net e acompanho o que o pessoal anda falando. Se tiver parado, pergunto alguma coisa e depois dou uma desencanada.

Para acompanhar direto, particularmente o formato me cansa um pouquinho.

Dica 3 – Participar de Hackathons

Se em eventos, você tem a possibilidade de ver gente como Martin Fowler de perto. Em Hackathons você tem a oportunidade de programar junto com caras como Pedro Markun, Ciro Costa e Matheus Zitelli.

Gente que talvez você não conheça, mas que está por trás de coisas como Metamáquina , Garoa HC , Transparência Hacker, Ônibus Hacker e Dados Abertos. Ou seja, é muito recompensador participar de um Hackathon.

pedro

Além disso, estar sob uma pressão tão grande (entregar um software funcionando com Layout, testes e código fonte organizadinho em prazos de 24 ou 30 horas) é uma experiência que mostra facetas da sua personalidade e de sua capacidade técnica que você pode nem imaginar conhecer.

Em 2015 eu peguei um dinheiro que tinha guardado, me aventurei sem GPS sem nada para cidade de São Paulo e carregando uma mala com colchonete  fui participar do Hackathon da Música, que unia duas coisas que quem me conhece sabe que eu adoro: música e programação.


Apesar de minha participação ter sido PÍFIA..kkkkk.. (Veja o vídeo da apresentação), foi uma das melhores experiências da minha vida. Ver o que essa galera fez em 24 horas foi algo muito transformador para mim.

Dicas:

  1. Valhe a pena se planejar para pelo menos uma vez por ano ir participar de algum Hackathon de preferência, fora do seu estado. Nós que moramos em Minas não temos uma grande ocorrência de eventos deste tipo então…bora SP!
  2.  Cadastre a palavra “Hackathon” no Google Alerts e receba no seu e-mail, sempre que houver uma noticia a respeito.

Há alguns bem sofisticados com prêmios de até R$ 10.000. Ou seja, além de aprender para c*, conhecer pessoas espetaculares e fazer turismo…você ainda pode fazer uma graninha.

Bom…agora que já sabemos tornar nosso conhecimento público e contribuir para alguma comunidade, vamos ao terceiro item:

Aprender a se comunicar verbalmente Inglês

Olha o Clichêzão aí. Este é um dos motivos de eu ainda ter enrolado um pouquinho a fazer este artigo de retrospectiva.

ID-100302051

Não gosto de hipocrisia..e como vou indicar para você algo que nem eu ainda sou bom?

Nem vou cair no lugar comum de dizer para você aprender a ler e escrever em Inglês.Mas pode ser que para trabalhar remoto, participar de equipes de bons projetos Open Source, em alguns momentos vai precisar entrar ao vivo no Skype e conversar em Inglês.

ID-10081514

Mas não se preocupe…tenho a indicação de um cara com MUITA credibilidade para te ajudar nessa tarefa ingrata. Felipe Neto

kkkk….Apesar de eu estar sendo irônico…acho que ele mandou bem demais nessa sugestão. Direta, simples e eficiente. Uma das melhores dicas de como aprender Inglês que eu já recebi.

Infelizmente neste quesito eu ainda tenho poucas dicas. Passar a assistir filmes e séries legendados também ajuda um pouquinho..rsrs….

Revisão antes do fim

Só fazendo uma pequena revisão para organizar. Conforme eu disse, os passos que estou seguindo para me tornar um desenvolvedor nômade e trabalhar de forma remota para qualquer lugar do mundo são:

  1. Ter um blog e escrever sobre tecnologia nele.
  2. Aprender a usar o básico do Git
  3. Participar de algum projeto Open Source
  4. Participar de desafios de Algoritmos no HackerHank ou qualquer outro site
  5. Participar de pelo menos um Hackathon no ano
  6. Ir em Meetups, de preferência de Arduíno
  7. Ir em eventos, sempre que possível
  8. Aprender a se comunicar em Inglês

E depois Cézar o que fazer depois dessa preparação?

ID-10038145

No meu caso, como o item 8 ainda está sendo concluído, o meu primeiro passo foi me cadastrar em Sites de Freelancers. Só que aqui, há um pulo do gato, uma dica de Ouro, que poucas pessoas costumam dar:

Use o plano pago desses sites, por pelo menos um mês. Eles funcionam! 

Antes de qualquer coisa, uma dica regional e pessoal. Infelizmente, o GetNinjas me decepcionou enormemente. Mesmo no plano pago.

Dito isso, abaixo seguem algumas dicas mais específicas com comentários das experiências que tive.

Sites que experimentei e não me trouxeram resultado ainda:

  1. Freelancer.com – A opção mais óbvia. Porém, se o seu Inglês ainda não está afiadíssimo eu não gastaria muito tempo aqui. Se tiver com o inglês afiado, eu recomendo guardar um dinheirinho, estudar HTML e Javascript e fazer os testes online destas ferramentas. Vai te colocar na frente de muita gente.
  2. ODesk – Excelente, porém eu recomendo também dar uma caprichadinha no Javascript Avancado e no HTML, pois é possível fazer os testes online desta ferramenta gratuitamente, porém se você não passar, só dá para recomeçar no outro mês. E sem estes testes amigo, você vai ser só mais um, competindo com Indianos e um monte de programador ninja espalhado pelo mundo.
  3. We Work Remotely  – Se você é bom em Rails eu recomendo fortemente. Caso contrário, eu sinceramente não consegui achar nada legal, para C# por exemplo.
  4. Remote OK – Possui um esquema que mostra o valor pago por cada tipo de linguagem. Interessantíssimo. Porém ainda não pesquisei a fundo.

Site que mais me trouxe resultado até agora: WorkanaID-100102290

Minha primeira impressão do Workana não foi boa. Entrei como um usúario free. Pesquisei algumas vezes e me frustrei. Porém, assistindo um vídeo que irei linkar no próximo tópico, resolvi experimentar a versão Premium. Só para ver o que iria acontecer. E vou te confessar. A qualidade das propostas aumentaram consideravelmente.

É claro que fatores como um Github mais vitaminado e eu estar com um senso de auto-estima muito mais ativo, influenciaram. Porém se há uma dica que eu posso lhe dar, se você ainda não está fera no Inglês e pretende se tornar um nômade digital é dar uma olhadinha boa no Workana.

VanHack

Por diversos motivos, ainda quero me aprimorar no Inglês e “colocar o pé na água” mais um pouquinho antes de já ir direto pra procurar emprego numa empresa Internacional. Mas essa é uma decisão minha, pessoal.

Você pode ir direto para uma consultoria como a VanHack a qualquer minuto. Recomendo fortemente, assistir o vídeo abaixo e ir atrás de todos os links que o amigo abaixo fornece.

Agradecimentos especiais ao Leandro que me passou esta dica show de bola.

Conclusão

Apesar de tudo. Ainda não há nada garantido. Ainda há 3 empresas no Brasil que eu adoraria trabalhar até fisicamente…pegando ônibus…sala de cafezinho…e  tudo mais. Uma delas ainda há chances de eu conseguir fazer entrevista. As outras duas (Studio Sol e Thoughtworks) infelizmente eu não consegui passar no processo seletivo. 😦

De toda forma, espero que daqui a uns dois anos eu olhe para este post, para esses 5 meses tão movimentados da minha vida e tenha orgulho das minhas decisões e escolhas.

Espero que seja produtivo para você e aquele abraço.

Como fazer um sensor de umidade utilizando Blynk

Este post serve para mostrar os passos seguidos para criar o medidor de umidade que será utilizado no Meetup do dia 25/06/2016. Basicamente a ideia é ter duas hastes medindo o valor de resistividade si, quanto menos umidade, menor o valor da saída do sensor. Seguindo as idéias deste link e deste link resolvi separar os níveis de umidade em 3:

  • Sensor no solo seco – Quando o sensor capta valores analógicos de 0 a 300, ou de 0 a 33%
  • Sensor no solo úmido – Quando o sensor capta valores analógicos de 300 a 700, ou entre 33% e 66%
  • Sensor em água – Quando o sensor capta valores analógicos de 700 a 950 ou 66% até 100%

Para apenas captar a umidade, o sistema precisa apenas de um arduíno, e um conjunto de dois sensores que são encontrados na internet com o nome de Higrômetro.  O esquema é super tranquilo de montar, e segue abaixo:

esquema-umidade-solo

Neste esquema, estamos utilizando a entrada analógica do Arduíno A0. O cabo preto recebe o valor de GND e o vermelho o valor de 5v. A haste não possui polaridade, então não há risco. O código para ler a entrada analógica também é bastante simples:

int leitura;
int humidadeSolo = 0;

void setup()
{
Serial.begin(9600);
pinMode(A0,INPUT);
}

void loop()
{
leitura = analogRead(A0);
humidadeSolo = (leitura);

 if(humidadeSolo < 300)
Serial.println(" Solo seco");

if((humidadeSolo > 300) && (humidadeSolo < 700))
Serial.println(" Relativamente umido");

if((humidadeSolo > 700) && (humidadeSolo < 950))
Serial.println(" Bem umido");
}

Blynk

O próximo passo é adicionarmos o Blynk ao projeto. Após instalar no seu smartphone, crie um projeto.

1

No ato de criação do projeto, aproveite para enviar para o seu email o valor da autenticação, você vai precisar dele mais tarde. Basta clicar no botão “email”

2

Logo após, adicione um componente Push ao seu projeto.

3

E depois adicione um Display  LCD. Irá lhe custar 400 créditos no programa, caso não tenha você irá precisar mostrar o resultado de outra forma.

4

A única configuração que eu recomendo realizar no push, é colocá-lo com alta prioridade.

5

No display, eu recomendo colocar o PIN como V1 e marcar como Advanced.

6

Ok, agora basta você baixar a Library do Blynk no Github , adicionar o arquivo zip na sua IDE e inserir o código abaixo.

#define BLYNK_PRINT Serial
#include <SPI.h>
#include <Ethernet.h>
#include <BlynkSimpleEthernet.h>
#include <SimpleTimer.h>

int leitura;
int humidadeSolo = 0;
SimpleTimer timer;
WidgetLCD lcd(V1);
char auth[] = "suaChaveDeAuthAqui";

void setup()
{
Serial.begin(9600);
pinMode(A0,INPUT);
Blynk.begin(auth);
timer.setInterval(2000L, myTimerEvent);
}
void myTimerEvent()
{
lcd.clear();
leitura = analogRead(A0);
humidadeSolo = (leitura / 4);

if(humidadeSolo < 300)
Serial.println(" Solo seco");

if((humidadeSolo > 300) && (humidadeSolo < 700))
Serial.println(" Relativamente umido");

if((humidadeSolo > 700) && (humidadeSolo < 950))
Serial.println(" Bem umido");
}
}
void loop()
{
Blynk.run();
timer.run();
}

Bom, acredito que isso deve ser o suficiente para poder ajudar. Caso haja alguma dúvida, pode entrar em contato que eu terei todo o prazer em trocar uma ideia.

Abaixo, segue o vídeo do sensor funcionando na prática. Participação especial da minha mãe.

Humor negro, Cirilo e Talk Radio

“Você sabe o motivo de não passar Globo Esporte na África? Porque este programa só começa depois do almoço”.kkkkkk

riso

Mesmo que você não me conheça pessoalmente, deve ficar muito incomodado em saber que eu ri muito dessa piada quando me contaram. Você inclusive deve achar uma afronta. Alguém negro, que segue o CodeForAfrica no Twitter, que considera a letra de Coisa de Pele praticamente uma oração e que ficou assombrado com o vídeo de Muhammad Ali  dizendo que foi proibido de comer um cachorro quente nos EUA…teoricamente não deveria  achar graça numa piada dessas.

A minha postura com o preconceito racial já confundiu algumas pessoas e eu já me senti de mãos atadas por não conseguir explicar o que eu penso realmente disso tudo.(Provavelmente não irei conseguir com esse artigo também, mas vale a tentativa…rs).

Antes de explicar porque eu acho essa piada dos Africanos-sem-almoço genial, gostaria de contextualizar um pouco sobre um momento em que a questão racial influenciou muito minha vida.

carrossel

Na minha época de escola, o SBT transmitia o seriado Carrossel original. Diferente de hoje, os episódios eram exibidos no horário do almoço. Não me lembro ao certo se era antes ou depois das aulas, só sei que, o que acontecia no Carrossel com certeza se tornava assunto do dia.

Tive muitos problemas para aprender Matemática (agora que conheço a história do Professor Ricieri parei de ter vergonha de assumir isso) e sempre fui uma pessoa tímida.  Me lembro de que na época da escola, ao mostrar uma expressão matemática resolvida corretamente para uma professora, era falou em voz alta: “olha aí gente, até o Cézar conseguiu resolver“…kkkk.

Num cenário desses, vou lhe confessar…. ver um personagem parecido fisicamente comigo se humilhando, se sujeitando a fazer um monte de coisas estúpidas, sempre abaixando a cabeça quando era questionado, assumindo erros de outras pessoas…só para agradar uma menina imbecil e arrogante,  que não dava a mínima para ele…era muito complicado. E acredito isso que não fez nada bem para minha auto-estima.

Nada contra a ideia de usar um UnderDog na fiçção e Carrossel era um festival de bullying para tudo quanto é lado, não só para negros. Mas tenho a teoria de que o modelo de novelas diárias é muito nocivo, principalmente pra crianças. Num filme de duas horas, se um personagem é humilhado mas recebe a sua redenção, a mensagem final fica.  Já humilhação diária gratuita, com direito a “virada de chave” somente no capítulo final,depois de meses, é uma conta mais difícil de fechar.

manoBrown

Se eu, negro de classe média, com assinatura de jornal, acesso a vídeo game e que nunca comeu sem carne tive problemas de auto-estima…imagina o estrago que o Cirilo fez no sujeito que fica na parte direita da tirinha “On a Plate“?

Na época, músicas como Ilê Ayê e filmes como Mississipi em Chamas tiraram alguns tijolos da parede de negatividade que o Cirilo criou ao redor do meu orgulho racial. Mas foi inesperadamente da periferia…que um cara chamado Mizael Santos, transmitindo de forma improvisada com o microfone captando até som de cachorros latindo no fundo, em algum lugar perdido no Aglomerado da Serra em Belo Horizonte, veio com a dinamite que faltava pra quebrar a parede por completo. 

Quando eu vi aquilo, uma rádio chamada Favela, com vinhetas dizendo “Essa radio é uma merda” e com programas chamados UaiRapSoul, Bolero do Lero-Lero e Balai Bope (??!)….foi algo tão curioso e diferente…que eu me lembro de ter ficado escutando por horas.

Me lembro que o Mizael estava meio nervoso no dia, porque queria dar recados, tocar uns sons que ele curtia e o pessoal não cansava de ficar ligando para pedindo uma maldita música que ele já estava cansado de tocar. Depois de aguardar pacientemente, já não aguentando mais de curiosidade, tive a recompensa e conheci “Um homem na estrada“.

cris

Tudo mudou a partir dali. Escutar Mano Brown dizendo que o “pretinho foi Super Star do notícias populares” e ver os apresentadores do Balai Bope dizendo que um incêndio numa boate chamada “Canecão” com show do “Armadilha do Samba” era Deus se vingando… me trouxe um visão do humor negro que eu nunca havia visto.

É difícil de explicar, mas depois disso…passei a acreditar que ver Cris Rock dizer que a América “é um tio que paga a sua faculdade e te abusa sexualmente“…escutar piadas dizendo que crianças usam relógios de pulso pra brincar de bambolê na África…ver um bandido “Sub-Nutrido” discutindo com um “Sub-Tenente” de um “Sub-Pais”…. ou ver Hélio D’ La Pena se auto-declarando “The King of Cocada Afrodescendente” são mais eficientes para restaurar a auto-estima de um negro do que um programa de televisão em horário nobre como o Mr Brau.

O motivo?  Humor negro nos faz pensar. É como uma cachaça da roça que seu paladar identifica como doce e que de repente queima no sua garganta impiedosamente.

O grande problema do humor negro é que ele não é pra todos. Juntar  malícia, deboche, sagacidade, ironia e transformar isso em PROVOCAÇÃO…exige MUITA inteligência…senão vira ofensa e ninguém gosta de ofensas.

Pro cara bolar uma frase dizendo que o presídio “tá com cheiro de morte e Pinho sol, um preso se enforcou com o lençol” ele tem que estar tão imerso nessa situação degradante, tem que estar achando aquilo tão absurdo, tão errado, tão fora de lugar..que misturada com uma inteligência acima da média, resulta nessa provocação rasteira…inquietante…(“com raiva por dentro, a caminho do centro“)

talk

Um bom discurso, mesmo que seja feito dessa forma espetacular não é tão poderoso quanto aquela piada incômoda que você conta, todo mundo ri..e depois se olha com sensação de que a humanidade foi um erro.

Quer fazer um teste? Comente com duas pessoas sobre este projeto foda que a Vodacom realiza em Moçambique, chamado M-Pesa. Fale o quanto você acha esse projeto empoderador, revolucionário e poderoso. Ou comente sobre esse refrigerador portátil, que armazena vacinas por mais tempo, sem utilizar eletricidade e que pode ajudar muitas pessoas a pararem de morrer de doenças curáveis na África.

No final, aproveite o gancho e conte, para somente uma das pessoas, uma piada absurda sobre a fome africana. (“Já escutou aquela da roleta Russa adaptada na África?”). Um ano depois puxe o assunto novamente, (“lembra daquele projeto do M-Pesa?”) a minha aposta é que a pessoa que você contou a piada vai se lembrar com muito mais facilidade.

É triste, mas é o que eu acredito. Pode ser que as coisas não ficaram claras (Ops! rs). Mas na dúvida, eu recomendo escutar o Poderoso Porco, que é muito mais eficiente em fazer provocações do que eu.

Spoilers da vida real

Ninguém gosta de saber que o assassino é o mordomo antes da hora.
Só que na internet é muito fácil dar o spoiler do final de um filme durante uma conversa, comentando sobre algum assunto relacionado, por exemplo. Eu já fiz isso e a sensação é horrível.

Todo mundo concorda que receber spoiler de obra de ficção é tenso. Mas o que fazer quando as pessoas dão spoilers da vida real?

mordomo

Há algum tempo atrás passei por esta situação no Whatsup, e não sei como consegui segurar a vontade de xingar a pessoa responsável. Só depois de um tempo, estudando mais sobre o motivo que leva as pessoas a fazerem isso é que percebi o quanto minha prudência foi benigna.

Explicando de forma bem simples: um conhecido meu foi esfaqueado num assalto.
E antes que alguém me ligasse falando a respeito, antes que a notícia aparecesse na televisão, eu já havia recebido fotos do cara ensanguentado no chão.

As fotos foram me enviadas num grupo onde nenhuma das pessoas me conhece pessoalmente. Então não dá para culpar ninguém.

ID-100278303

Foi chato, mas quando aprendi sobre como os efeitos ClickBait e HateClick funcionam, cheguei a algumas suspeitas dos motivos que levam as pessoas a fazerem isso:

1 – Puxar assunto – Apesar de ser muito estranho, muita gente só consegue puxar assunto se tiver algo impactante para falar. Nunca dá para começar a conversa falando sobre o tempo, sobre política ou perguntando da família. Sempre tem que ser algo bombástico.

2 – Reforçar um ponto – Pra algumas pessoas, a necessidade de mostrar para os outros que você acredita em algo é tão grande, que as fotos de um preso perigoso que foi esquartejado ou de um motorista bêbado que ficou preso nas ferragens ou de alguém tendo convulsões porque consumiu drogas, se transformam em figuras para ilustrar o seu “ponto de vista”.

3 – Falta total de empatia – Eu nunca vou conseguir entender pessoas que param perto de acidentes graves apenas para ficar olhando e tirando fotos. Ou que alugam, baixam filmes de pessoas reais sendo torturadas, mutiladas ou apanhando covardemente e não sentem nada. Assistem como se fosse um filme de terror normal. Será que isso é uma doença?

cicloviaA única coisa que sei é que, a partir de agora, sempre que der spoiler de uma série ou filme sem querer para alguém, acho que não vou mais me sentir tão mal.

Dar spoiler da vida real é  bem pior. 😦