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

Não deu onda! Musk promete não fumar maconha em público, diz Nasa

Elon Musk, CEO da Tesla e da SpaceX, fuma maconha após revelar planos de avião elétrico. - Reprodução/YouTube
Elon Musk, CEO da Tesla e da SpaceX, fuma maconha após revelar planos de avião elétrico. Imagem: Reprodução/YouTube

Helton Simões Gomes

Do UOL, em São Paulo

30/11/2018 12h48

Não deu onda. A Nasa não viu graça no fato de Elon Musk, presidente da SpaceX, aparecer ao vivaço fumando maconha e bebendo uísque durante entrevista a um podcast dos Estados Unidos. Tanto que a agência especial norte-americana abriu uma investigação sobre a empresa aeroespacial, e um do órgão afirmou nesta quinta-feira (29) que Musk não será mais visto fazendo esse tipo de coisa.

Mas por que a Nasa se importa com que tipo de substância Musk consome?

VEJA TAMBÉM:

Acontece que a SpaceX é uma das fornecedoras da Nasa. Ela e a Airbus possuem um contrato para construir espaçonaves para transportar astronautas americanos dos Estados Unidos até a Estação Internacional Espacial. O pagamento combinado a elas é de US$ 6,8 bilhões. Só que o acordo também estipula que as empresas "mantenham um programa para que a força de trabalho esteja livre de drogas e álcool".

Entendeu? Quando apareceu fumando um cigarro de maconha e bebendo uísque, Musk colocou em risco um contrato bilionário com a Nasa. A reação do mercado à ação dele foi sentido ainda pela outra companhia que ele lidera, a Tesla. Naquele dia, as ações da montadora de carros elétricos despencaram.

Elon Musk, CEO da Tesla e da SpaceX, fuma maconha - Reprodução/Youtube - Reprodução/Youtube
Elon Musk, CEO da Tesla e da SpaceX, fuma maconha
Imagem: Reprodução/Youtube

Uma brincadeira relacionada a maconha já rendeu um bom prejuízo a Musk. Ele usou o 4h20, horário tido por usuários da droga, como mote para estipular em US$ 420 o preço de compra de ações da Tesla em uma suposta retirada da empresa da Bolsa de Valores.

A SEC, xerife do mercado de capitais dos EUA, não achou graça da brincadeira: ao constatar que não havia fundos para assegurar a negociação, multou em US$ 20 milhões tanto Musk quanto a Tesla e ainda obrigou o executivo a deixar a presidência do conselho da companhia.

VEJA TAMBÉM:

Devido ao cigarrinho, Jim Bridenstine, da Nasa, exigiu uma revisão da política de cultura e segurança tanto da Boeing quanto da SpaceX. Agora, ele comentou que Musk assegurou não ser visto novamente fumando maconha em público.

Ele está tão comprometido com segurança quanto qualquer um. Ele entende que isso não foi um comportamento apropriado, e você não verá isso de novo

Brindestine lembrou ainda do compromisso assumido pela SpaceX com a Nasa.

Eu vou te dizer que isso não ajudou e não inspirou confiança, e que líderes de organizações precisam tomar isso como um exemplo do que e de onde fazer quando você lidera uma organização que vai lançar astronautas norte-americanos

Empreendedor vida louca ou gênio incompreendido: quem é Elon Musk?

Leia mais