;(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

Após perder filho, ele criou "band-aid" que monitora crianças com câncer

Acervo pessoal
Imagem: Acervo pessoal

Natália Eiras

Colaboração para Tilt

09/08/2020 04h00

Às vésperas do aniversário de um ano, Lucas foi diagnosticado com neuroblastoma na glândula suprarrenal, um tipo de câncer que costuma aparecer em crianças com menos de cinco anos de idade. A família estava com buffet acertado e família reunida, mas cancelou tudo porque ele seria internado no dia seguinte.

Lucas lutou contra o câncer por um ano e meio, mas faleceu no dia 28 de junho de 2013 por causa de uma infecção. O menino tinha febres recorrentes em São José do Campos (SP), onde morava com a família. Seu pai, Joel de Oliveira Junior, pensou que poderia ter feito alguma coisa para mudar essa história. Por isso, criou um dispositivo — uma espécie de "band-aid" colocado na axila da criança — que monitora a temperatura de crianças pacientes de câncer.

"Quando ficamos sabendo [do neuroblastoma], foi uma espécie de luto que até tenho vergonha de ter sentido na hora porque o meu filho ainda estava vivo na minha frente", diz o engenheiro de 49 anos, em entrevista a Tilt.

"Queria ajudar de alguma forma, mas não dando dinheiro. Era executivo, sabia que eu podia fazer algo. E eu sou bom em conectar pessoas", define Oliveira Júnior, que criou a empresa Luckie Tech para desenvolver o aparelho.

O ório é semelhante a um adesivo e tem um processador que poderá mapear até cinco sinais vitais. "Mas primeiro decidimos deixar o monitoramento de temperatura pronto. Agora vamos investir nos batimentos cardíacos e frequência respiratória", explica.

Joel de Oliveira Junior com seu filho Lucas, diagnosticado com neuroblastoma na glândula suprarrenal - Acervo pessoal - Acervo pessoal
Joel de Oliveira Junior com seu filho Lucas, diagnosticado com neuroblastoma na glândula suprarrenal
Imagem: Acervo pessoal

Sonho com uma nuvem

Joel conta, muito emocionado, que a ideia do gadget surgiu em um sonho. "Era uma nuvem que ficava acima da criança, pairando". Lembrou, então, que durante o tratamento de Lucas, ele e a ex-mulher monitoravam a temperatura do menino a cada três horas. Isso porque, ao ter febre, a criança tem uma janela de atendimento de duas horas.

Para evitar sobrecarregar os pais e manter o paciente em mais segurança, ele pensou, então, em fazer uma solução que permitisse monitorar o tempo todo a temperatura da criança. Esse recurso já existia, mas, segundo Oliveira Júnior, não tinha nenhum que também compartilhava esses dados com o hospital.

Encontrou parceiros no médico Wagner Marcondes, do Hospital Albert Einstein, e William Sousa, presidente do grupo Kainos de Inteligência Artificial. Eles bateram o martelo para tirar a Luckie Tech do papel em junho de 2019, seis anos depois da morte de Lucas. "Não foi caso pensado ser exatamente nesse dia, foi mais uma dessas coincidências", fala Joel, se dividindo entre o riso e o choro.

Desenvolvendo o "band-aid"

O primeiro protótipo do dispositivo da Luckie Tech era, de acordo com Joel, do tamanho de um celular — ou seja, não muito prático. "Até perguntei pro desenvolvedor se ele tinha algum filho e há quanto tempo ele não pegava o menino no colo", brinca. A versão atualizada, do tamanho de um curativo, ficou pronta no fim de fevereiro deste ano.

O dispositivo compartilha os dados sobre a temperatura com os pais e com um sistema ligado ao hospital, onde um enfermeiro acompanharia, em uma espécie de sala de guerra, as crianças internadas. Além do hardware, a Luckie Tech criou uma plataforma em nuvem para a troca de informações. Para isso, teve o apoio de empresas como Embraer e AWS (da Amazon). No total, cerca de R$ 2 milhões foram gastos no desenvolvimento. "Investi meu carro, meu apartamento nesse projeto", diz Oliveira Júnior.

Eles devem começar a monitorar crianças no Gacc (Grupo de Assistência à Criança com Câncer), em São José dos Campos (SP), onde Lucas foi tratado. A princípio, 50 pacientes usarão, mas a empresa diz que terá capacidade para até 300. O teste inicial vai ser focado em adolescentes porque eles podem dar mais , mas o foco do dispositivo está nas crianças menores, que geralmente não sabem dizer quando e como se sentem mal.

Mesmo com todo o desenvolvimento pronto, a implementação também custa muito dinheiro. Por isso, a Luckie Tech criou uma campanha de financiamento coletivo, com meta de R$ 800 mil, para conseguir manter o serviço em operação por pelo menos um ano. A empresa divulga suas ações por meio de uma página no Facebook e um perfil no Instagram.

A empresa espera que o aparelho em funcionamento gere dados suficientes para, no futuro, técnicas de aprendizado de máquina possam captar, por exemplo, efeitos colaterais de tratamentos do câncer. Assim, poderá ajudar no desenvolvimento de um medicamento. Outro o adiante seria sugerir tratamentos mais eficazes levando em conta variáveis como a região onde a criança mora e seu histórico médico.

Joel de Oliveira Junior com os filhos Arthur e Victor - Acervo pessoal - Acervo pessoal
Joel de Oliveira Junior com os filhos Arthur e Victor
Imagem: Acervo pessoal

Mudando de jogo

Em apresentações de planos de negócios, era comum Joel ouvir que ficaria rico com o desenvolvimento do dispositivo.

Uma vez, uma pessoa que não sabia a história do Lucas disse que eu poderia cobrar o quanto eu quisesse pelo monitoramento porque 'pai de criança doente paga'. Mas não é isso que eu quero. Não preciso de cinco Ferraris, dez apartamentos

Como a Luckie Tech precisa pagar as contas, vai cobrar o valor de R$ 250 por criança para fazer o monitoramento. Atualmente, não são os pais que pagam esta conta, mas o SUS (Sistema Único de Saúde) e os convênios médicos.

"O nosso foco é negociar com outras empresas, não levar essa conta para os pais, que já gastam por volta de R$ 35 mil por mês no tratamento de seus filhos. Por isso, temos que baratear o custo do nosso serviço para que possamos fazer negócio com instituições médicas".

Este posicionamento surgiu, segundo Joel, após a morte de Lucas. "Antes eu era muito focado em dinheiro, com a falácia de que era para dar o melhor aos meus filhos", diz o pai de Victor, 11, e Arthur, 6. "Mas é mentira, é para você mesmo. O filho quer um abraço, um carinho".

Por isso, sete anos depois da partida do menino, o engenheiro tem criado bons momentos também com seus filhos. "Senti uma necessidade maior de ficar mais perto deles. Pelo menos algo bom surgiu desse momento tão doloroso. É difícil, mas é natural".