, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Clarence Joldersma | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Dr. Clarence Joldersma

Professor Emeritus

Biography

Clarence Joldersma is the resident philosopher and interdisciplinary scholar of the Graduate Studies in Education Program at ÃÛÌÒapp. He has been influenced by theorists from several academic areas, including Thomas Kuhn and Michael Polanyi in philosophy of science, Jurgen Habermas and Emmanuel Levinas in continental philosophy, and Hendrik Hart and Nicholas Wolterstorff in Christian philosophy.

Over fifteen years of experience as a high school science teacher in Ontario have helped shape his thinking about education and schools. His graduate work at the Institute for Christian Studies and the University of Toronto was in philosophy, first the philosophy of science and then philosophy of mind and cognitive science.  

Those who have studied with Professor Joldersma have observed that he works "at the boundaries," at the intersection of political science/theory, sociology, natural sciences (especially biology), and education. In particular what animates him are issues of social justice and sustainability. This wide range of interests enables him to ask philosophical questions that expand conceptual horizons, both for himself and his students. He has an eye for asking penetrating questions, and has a knack of framing complex issues in ways that move thinking forward, without doing it for you.

Education

  • MPhil, Institute for Christian Studies, 1983
  • MEd, University of Toronto, 1987
  • PhD, University of Toronto, 1994

Academic Interests

  • Levinas and education
  • Philosophy of science
  • Phenomenology and philosophy of education
  • Environmental issues and philosophy of education

Publications