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

Proposta de Bolsonaro para humanas fere Constituição, dizem especialistas

Ana Carla Bermúdez

Do UOL, em São Paulo

27/04/2019 04h00Atualizada em 27/04/2019 11h35

Especialistas da área da educação afirmam que a proposta do presidente Jair Bolsonaro (PSL) e do ministro da Educação, Abraham Weintraub, de descentralizar o investimento em faculdades de filosofia e sociologia é inconstitucional.

A medida foi anunciada na noite de quinta-feira (25), em uma transmissão ao vivo nas redes sociais do presidente, e reforçada por publicações no Twitter de Bolsonaro na manhã de ontem.

Segundo o presidente, a retirada de investimentos dos cursos da área de humanas seria uma forma de "respeitar o dinheiro do contribuinte".

"A proposta é inconstitucional e, neste momento, irrealizável", afirma Daniel Cara, coordenador-geral da Campanha Nacional pelo Direito à Educação.

As universidades públicas, explica Cara, são istradas segundo o princípio da autonomia universitária --expresso no artigo 207 da Constituição.

Diz o artigo: "As universidades gozam de autonomia didático-científica, istrativa e de gestão financeira e patrimonial, e obedecerão ao princípio de indissociabilidade entre ensino, pesquisa e extensão".

"Ou seja, quem decide o que vai ser lecionado nas universidades são as próprias universidades", diz Cara. "Caso Bolsonaro e Weintraub queiram mudar a Constituição, terão que reunir ampla maioria parlamentar."

Segundo ele, uma eventual emenda constitucional que disponha sobre a medida, caso venha a ser proposta e aprovada, pode ser levada para discussão no STF (Supremo Tribunal Federal). Cara, no entanto, diz não acreditar que essa possibilidade se concretize.

"Diante da autonomia que devem ter as instituições de ensino superior, essa é uma proposta que não deve prosperar", concorda Antônio Gonçalves, presidente do Andes (Sindicato Nacional dos Docentes das Instituições de Ensino Superior) e professor do curso de medicina da UFMA (Universidade Federal do Maranhão).

"Ele não pode dizer que vai cortar recursos de custos como esses, porque a universidade tem autonomia constitucional. Agora, ele pode sufocar cortando bolsas [de pesquisa], através da Capes, por exemplo", alerta.

Ligada ao MEC, a Capes (Coordenação de Aperfeiçoamento de Pessoal de Nível Superior) é uma das principais agências responsáveis por fornecer bolsas para pesquisa no país e no exterior.

Cara afirma, ainda, que o governo pode criar restrições aos cursos de humanas no Fies, que oferece financiamento para cursos em instituições privadas, e no Prouni, que oferece bolsas em universidades particulares por meio da nota do Enem (Exame Nacional do Ensino Médio). "Mas isso acarretará em resistência em cada unidade", diz.

A cientista política Flávia Biroli, presidente da Associação Brasileira de Ciência Política e professora da UnB (Universidade de Brasília), diz que as ciências humanas sempre tiveram um investimento "diferenciado" quando comparado ao de outras áreas, como as ciências exatas.

"Mas nunca tivemos um projeto expresso de restrição de uma das áreas de conhecimento", afirma.

Errata: este conteúdo foi atualizado
Diferentemente do que informava a reportagem, o Prouni oferece bolsas para instituições de ensino particulares. O texto foi corrigido.