;(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
Logo Pagbenk Seu dinheiro rende mais
Topo

4 dicas de liderança de Jeff Bezos, fundador da Amazon e mais rico do mundo

Jeff Bezos, fundador da Amazon - Andrej Sokolow/picture alliance via Getty Images
Jeff Bezos, fundador da Amazon Imagem: Andrej Sokolow/picture alliance via Getty Images

Felipe Oliveira

Colaboração para o UOL, em São Paulo

26/11/2020 17h15

Dormir cedo e acordar cedo, tomar café da manhã com os filhos e fazer exercícios. Muitos dizem que não conseguem encontrar tempo para fazer esse tipo de coisa, mas Jeff Bezos, fundador da Amazon e pessoa mais rica do mundo, diz que atividades como essas ajudam na tomada de decisões.

"Eu priorizo o sono, a menos que esteja viajando, [em lugares] com fusos horários diferentes. Às vezes, conseguir oito horas [de sono] é impossível, mas estou muito focado nisso e preciso de oito horas. Meu humor fica melhor", disse Bezos, dono de uma fortuna estimada em US$ 182 bilhões.

A declaração está no novo livro do bilionário, "Invent and Wander: The Collected Writings of Jeff Bezos" (Inventar e Vagar: A Coleção de Escritos de Jeff Bezos, em tradução livre), ainda não publicado no Brasil. Um trecho da obra foi publicado pelo site Fast Company.

Confira outras dicas de liderança do bilionário.

1. Use a manhã para tarefas importantes

Para o homem mais rico do mundo, organizar o tempo e fazer tarefas pela manhã é fundamental.

"Marco minha primeira reunião para as 10h. Gosto de fazer minhas reuniões de QI alto antes do almoço. Qualquer coisa que seja realmente desafiadora mentalmente é uma reunião às 10h, porque às cinco da tarde eu não consigo pensar mais sobre o assunto", diz.

2. Tome poucas decisões e pense no futuro

Bezos diz que um executivo sênior é pago para tomar poucas decisões, mas de alta qualidade. "Se eu tomar três boas decisões por dia, isso é o suficiente, e elas devem ser da melhor qualidade que eu puder", afirma.

Ele aponta a importância de se pensar no futuro para a tomada de decisões e diz que na Amazon "todos os executivos seniores operam da mesma maneira que eu".

"Eles [executivos] funcionam pensando no futuro, vivem no futuro. Nenhuma das pessoas que se reporta a mim deve realmente se concentrar no trimestre atual", diz. Bezos ainda afirma que quando o parabenizam pelo trimestre, ele diz: "Obrigado, mas o que estou realmente pensando é que o trimestre foi feito há três anos".

"No momento, estou trabalhando em um trimestre que se revelará em algum momento de 2023. Você precisa pensar com dois ou três anos de antecedência", completa.

3. Identifique as decisões com efeitos irreversíveis

Para o bilionário, decisões que são irreversíveis e cujas consequências são mais sérias devem ser feitas com cuidado, tomando o tempo necessário. Por isso, o CEO da Amazon afirma que é importante, antes de mais nada, identificá-las, questionado se a decisão é "uma porta de mão única ou de mão dupla".

Bezos diz que nenhum executivo deve tomar decisões "de mão única" rapidamente. Em vez disso, deve chegar a um consenso com a equipe após um debate e "muito pensamento".

4. Estimule a equipe a discordar

Outro ponto importante, segundo Bezos, é que o líder estimule sua equipe a discordar e a ter vários pontos de vista. Ele diz que o executivo, "como a pessoa mais experiente", deve solicitar que a equipe "jogue, discorde e se comprometa".

Para o bilionário, porém, em alguns dos momentos em que chefe e subordinado discordarem, o chefe precisar chamar para si a decisão e bancá-la.

"Às vezes, você deve ignorar os subordinados, mas esse julgamento é só seu", diz.