;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Chico Barney

OPINIÃO

Texto em que o autor apresenta e defende suas ideias e opiniões, a partir da interpretação de fatos e dados.

Vendedor de emoções: Casimiro é o sucessor natural de Faustão e Galvão

Simplesmente Casimiro Miguel, o próximo namoradinho do Brasil - Reprodução/YouTube
Simplesmente Casimiro Miguel, o próximo namoradinho do Brasil Imagem: Reprodução/YouTube

Colunista do UOL

01/09/2021 16h26

Receba os novos posts desta coluna no seu e-mail

Email inválido

Casimiro Miguel é um jovem comunicador cujo interesse primário é o futebol, mas que começa a furar a bolha do esporte para conquistar uma audiência cada vez mais variada —e apaixonada.

Já há alguns anos, constrói uma base sólida de fãs graças às funções de apresentador e comentarista que desempenha em duas emissoras de TV: o SBT do Rio de Janeiro e a TNT Sports.

Informal e brincalhão, com os trejeitos que as pessoas usam entre amigos, Casimiro vai se tornando um role model para a turma de menor idade, a quem ele chama gentilmente de nerdolas.

A grande virada na carreira começou quando ou a fazer lives diárias na Twitch. A plataforma permitiu que criasse um vínculo ainda mais próximo com os seguidores. Madrugada adentro, faz companhia para dezenas de milhares de telespectadores que aguardam seus comentários sobre os gols da rodada e o Cartola.

Mas a liberdade para falar de outros assuntos é que está transformando o carioca em fenômeno cultural. Sem a necessidade de ficar ao futebol, aproveita as noites para assistir junto com a turma os mais variados vídeos no YouTube —e contar causos extravagantes de sua vida cotidiana.

Estão fazendo particular sucesso os comentários que costuma tecer a respeito das visitas guiadas a luxuosas mansões. Alguns desses corretores se tornaram praticamente personagens desse pitoresco universo, como Augusto Braga —elegante desbravador dos endereços mais concorridos por novos ricos no Rio de Janeiro. "Faltou uma TVzinha ali", reclama Casimiro, com certa frequência, ao avistar cômodos sem o eletrodoméstico —mesmo que sejam cozinhas ou banheiros.

Mas o vasto cardápio de conteúdo vai muito além. É um arguto analista de reality shows, também particularmente interessado pelo preparo da comida de rua nos mais variados lugares do mundo, acompanha batidas policiais a motociclistas e... Bom, o que mais estiver disponível no YouTube.

A única constante, no final das contas, é sua personalidade absolutamente adorável. Difícil não simpatizar com o sujeito, que conversa com cada vez mais pessoas da mesma forma como se estivesse recebendo velhos companheiros no aconchego do lar.

Além do sucesso na abordagem, há talentos inquestionáveis: Casimiro é um exímio contador de histórias, modulando com cuidado e naturalidade o ritmo de cada desdobramento.

E também construiu toda uma mitologia própria, com termos e referências muito particulares. Frases de impacto como "meteu essa?" e até algo tão singelo quanto a interjeição "ih!" já estão ganhando a internet e as ruas sob esse novo contexto.

Acima de qualquer coisa, vejo Casimiro como um narrador. Se eu estivesse em alguma sala de luz fria na Berrini, conversando com publicitários, ousaria defini-lo como o maior storyteller da nova geração.

Não é fácil conseguir engatar uma outra camada de história ao que está mostrando na tela. Seja no vídeo do Porsche das filhas do Gugu, ou uma live de torcedores do Internacional após uma derrota vexatória, existe um ponto de vista ali tão pessoal que ninguém mais seria capaz de emular.

Nesse sentido, em tempos de formatos televisivos tão duros, que permitem pouco espaço para a energia caótica do condutor, Casimiro parece carregar a tocha de figuras como Galvão Bueno e Fausto Silva. Vendedores de emoção, seja em um jogo terrível da seleção ou na vigésima quinta reprise de um acidente doméstico.

Quando esses contadores de história estão em ação, tanto faz o que está acontecendo: é o olhar deles que atrai, engaja e fascina. "Treinando" cerca de 5 horas por dia com sua audiência na Twitch, amplificada de maneira estrondosa por intermédio de trechos no YouTube, Casimiro Miguel tem um futuro brilhante pela frente.

Voltamos a qualquer momento com novas informações.