CINXE.COM

Andries van Dam - CHM

<!DOCTYPE html> <!--[if lte IE 8 ]> <html lang="en" class="no-js oldie"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" style="margin: 0 !important; position: relative!important;" class="no-js"> <!--<![endif]--> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"><script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"3711322ece",applicationID:"406198101"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <link rel="icon" type="image/x-icon" href="/wp-content/themes/bsdstarter/favicon.ico"> <link rel="shortcut icon" href="/wp-content/themes/bsdstarter/favicon.ico"> <link rel="stylesheet" href="/wp-content/themes/bsdstarter/assets/css/mediaelementplayer.min.css" type="text/css" media="all"> <link rel="stylesheet" href="/wp-content/themes/bsdstarter/style.css?v=2024-24-11" type="text/css" media="all"> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <!-- This site is optimized with the Yoast SEO Premium plugin v22.5 (Yoast SEO v22.5) - https://yoast.com/wordpress/plugins/seo/ --> <title>Andries van Dam - CHM</title> <link rel="canonical" href="https://computerhistory.org/profile/andries-van-dam/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Andries van Dam" /> <meta property="og:description" content="For a lifetime of contributions to computer graphics, hypertext, and education." /> <meta property="og:url" content="https://computerhistory.org/profile/andries-van-dam/" /> <meta property="og:site_name" content="CHM" /> <meta property="article:publisher" content="https://www.facebook.com/computerhistory/" /> <meta property="article:modified_time" content="2021-08-25T15:43:04+00:00" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@ComputerHistory" /> <meta name="twitter:label1" content="Est. reading time" /> <meta name="twitter:data1" content="3 minutes" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://computerhistory.org/profile/andries-van-dam/","url":"https://computerhistory.org/profile/andries-van-dam/","name":"Andries van Dam - CHM","isPartOf":{"@id":"https://computerhistory.org/#website"},"datePublished":"2021-02-17T19:00:02+00:00","dateModified":"2021-08-25T15:43:04+00:00","breadcrumb":{"@id":"https://computerhistory.org/profile/andries-van-dam/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://computerhistory.org/profile/andries-van-dam/"]}]},{"@type":"BreadcrumbList","@id":"https://computerhistory.org/profile/andries-van-dam/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://live-comp-history-museum.pantheonsite.io/"},{"@type":"ListItem","position":2,"name":"Andries van Dam"}]},{"@type":"WebSite","@id":"https://computerhistory.org/#website","url":"https://computerhistory.org/","name":"CHM","description":"Computer History Museum","publisher":{"@id":"https://computerhistory.org/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://computerhistory.org/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https://computerhistory.org/#organization","name":"Computer History Museum","url":"https://computerhistory.org/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://computerhistory.org/#/schema/logo/image/","url":"https://computerhistory.org/wp-content/uploads/2019/07/chm_logo_400x400.jpg","contentUrl":"https://computerhistory.org/wp-content/uploads/2019/07/chm_logo_400x400.jpg","width":800,"height":800,"caption":"Computer History Museum"},"image":{"@id":"https://computerhistory.org/#/schema/logo/image/"},"sameAs":["https://www.facebook.com/computerhistory/","https://x.com/ComputerHistory","https://www.instagram.com/computerhistory/","https://www.youtube.com/user/ComputerHistory","https://en.wikipedia.org/wiki/Computer_History_Museum"]}]}</script> <!-- / Yoast SEO Premium plugin. --> <link rel='dns-prefetch' href='//static.addtoany.com' /> <link rel='dns-prefetch' href='//www.google.com' /> <link rel='dns-prefetch' href='//addevent.com' /> <link rel='dns-prefetch' href='//cdnjs.cloudflare.com' /> <link rel='stylesheet' id='popup-maker-site-css' href='//computerhistory.org/wp-content/uploads/pum/pum-site-styles.css?generated=1732227841&#038;ver=1.18.5' type='text/css' media='all' /> <link rel='stylesheet' id='wp-block-library-css' href='https://computerhistory.org/wp-includes/css/dist/block-library/style.min.css?ver=6.4.3' type='text/css' media='all' /> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body .is-layout-grid{display: grid;}body .is-layout-grid > *{margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} .wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} .wp-block-pullquote{font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='contact-form-7-css' href='https://computerhistory.org/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.9.3' type='text/css' media='all' /> <link rel='stylesheet' id='addtoany-css' href='https://computerhistory.org/wp-content/plugins/add-to-any/addtoany.min.css?ver=1.16' type='text/css' media='all' /> <style id='addtoany-inline-css' type='text/css'> .a2a_floating_style { position: relative !important; top: 0 !important; margin-left: 0 !important; } </style> <link rel='stylesheet' id='popup-css' href='https://cdnjs.cloudflare.com/ajax/libs/magnific-popup.js/1.1.0/magnific-popup.css?ver=1' type='text/css' media='all' /> <script type="text/javascript" src="https://computerhistory.org/wp-content/themes/bsdstarter/src/js/vendor/jquery.js?ver=3.4.1" id="jquery-js"></script> <script type="text/javascript" id="addtoany-core-js-before"> /* <![CDATA[ */ window.a2a_config=window.a2a_config||{};a2a_config.callbacks=[];a2a_config.overlays=[];a2a_config.templates={}; /* ]]> */ </script> <script type="text/javascript" async src="https://static.addtoany.com/menu/page.js" id="addtoany-core-js"></script> <script type="text/javascript" async src="https://computerhistory.org/wp-content/plugins/add-to-any/addtoany.min.js?ver=1.1" id="addtoany-jquery-js"></script> <script type="text/javascript" src="https://addevent.com/libs/atc/1.6.1/atc.min.js?ver=1" id="atc-js"></script> <link rel="https://api.w.org/" href="https://computerhistory.org/wp-json/" /><link rel='shortlink' href='https://computerhistory.org/?p=20135' /> <link rel="alternate" type="application/json+oembed" href="https://computerhistory.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcomputerhistory.org%2Fprofile%2Fandries-van-dam%2F" /> <link rel="alternate" type="text/xml+oembed" href="https://computerhistory.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcomputerhistory.org%2Fprofile%2Fandries-van-dam%2F&#038;format=xml" /> <style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style> <style type="text/css" id="wp-custom-css"> @media only screen and (max-width: 445px) { header .nav-section-bottom { height: 440px!important; } } @media only screen and (max-width: 992px) { header .nav-section-bottom { height: 400px; overflow-y: scroll; position: relative; padding-bottom: 5rem; } header .nav-section-bottom .nav-section-bottom-menu .bottom-menu>li .submenu { width: 100%; } } .links-list ul { margin-bottom: 0!important; margin-left: 0!important; } .links-list ul li { margin-bottom: 14px!important; padding-left: 0!important; } .links-list ul>li:before { content: none!important; } .two-column-grid__right .events-list { margin-bottom: 0!important; margin-left: 0!important; } .two-column-grid__right .events-list li { margin-bottom: 14px!important; padding-left: 0!important; } .two-column-grid__right .events-list>li:before { content: none!important; } .single-column-grid .events-list { margin-bottom: 0!important; margin-left: 0!important; } .single-column-grid .events-list li { margin-bottom: 14px!important; padding-left: 0!important; } .single-column-grid .events-list>li:before { content: none!important; } .three-column-grid__center .events-list { margin-bottom: 0!important; margin-left: 0!important; } .three-column-grid__center .events-list li { margin-bottom: 14px!important; padding-left: 0!important; } .three-column-grid__center .events-list>li:before { content: none!important; } .pagination ul { margin-bottom: auto!important; margin-left: auto!important; } .pagination ul li { margin-bottom: 14px!important; padding-left: 0!important; } .pagination ul>li:before { content: none!important; } </style> <script type="text/javascript"> var MTUserId = '1c75c36c-a46a-4891-8bfa-e317e4c2df90'; var MTFontIds = new Array(); MTFontIds.push("1475724"); // DIN 1451 W01 EngSchrift (function () { var mtTracking = document.createElement('script'); mtTracking.type = 'text/javascript'; mtTracking.async = 'true'; mtTracking.src = '/wp-content/themes/bsdstarter/src/fonts/mtiFontTrackingCode.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(mtTracking); })(); </script> <script src="/wp-content/themes/bsdstarter/src/js/vendor/mediaelement-and-player.min.js'"></script> <!-- Google Tag Manager --> <script>(function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-MLN7JPS');</script> <!-- End Google Tag Manager --></head> <body class="profiles-template-default single single-profiles postid-20135" data-template="base.twig"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MLN7JPS" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <header> <div class="nav-wrapper"> <div class="container"> <div class="nav-section-top"> <div class="logo"> <a class="logo" href="https://computerhistory.org" title="Computer History Museum home link"> <img class="full-logo" src="https://computerhistory.org/wp-content/themes/bsdstarter/assets/img/chm-logo-text.svg" alt="Computer History Museum Logo"> <img class="teaser-logo" src="https://computerhistory.org/wp-content/themes/bsdstarter/assets/img/chm-logo-short.svg" alt="Computer History Museum Logo"> </a> </div> <div class="right-content"> <div class="responsive-buttons"> <a href="https://donate.computerhistory.org/computer-history-museum/" class="btn-nav btn-red chm-donate-popup">Donate</a> <a href="https://connect.computerhistory.org" class="btn-nav btn-green ">Tickets</a> </div> <button class="mobile-menu-toggle"> <span>Menu</span> </button> </div> </div> <div class="nav-section-bottom"> <div class="nav-section-bottom-menu"> <ul class="menu vertical large-horizontal bottom-menu" data-responsive-menu="drilldown large-dropdown"> <li> <a href="/explore/">Explore</a> <ul class="nested menu submenu vertical"> <li><a href="https://computerhistory.org/explore/">Overview</a></li> <li><a href="/collections/">Collections</a></li> <li><a href="https://computerhistory.org/timelines/">Timelines</a></li> <li><a href="https://computerhistory.org/blogs/">Blogs</a></li> <li><a href="/stories/">Stories</a></li> <li><a href="/playlists/">Playlists</a></li> <li><a href="https://computerhistory.org/activities-resources/">Activities &#038; Resources</a></li> </ul> <!-- /.menu.nested --> </li> <li> <a href="/visit/">Visit</a> <ul class="nested menu submenu vertical"> <li><a href="/visit/">Overview</a></li> <li><a href="https://computerhistory.org/plan-your-visit/">Plan Your Visit</a></li> <li><a href="https://computerhistory.org/exhibits/">Exhibits</a></li> <li><a href="https://computerhistory.org/tours/">Tours</a></li> <li><a href="https://computerhistory.org/visit/group-visits/">Group Visits</a></li> <li><a href="/events/">Events</a></li> <li><a href="https://computerhistory.org/venue/">Venue</a></li> </ul> <!-- /.menu.nested --> </li> <li> <a href="/about/">About</a> <ul class="nested menu submenu vertical"> <li><a href="/about/">Overview</a></li> <li><a href="https://computerhistory.org/this-is-chm/">This Is CHM</a></li> <li><a href="https://computerhistory.org/fellow-awards/">Awards</a></li> <li><a href="https://computerhistory.org/programs/">Programs</a></li> <li><a href="/press-releases">News</a></li> <li><a href="https://computerhistory.org/leadership/">Leadership</a></li> </ul> <!-- /.menu.nested --> </li> <li> <a href="/join/">Join & Give</a> <ul class="nested menu submenu vertical"> <li><a href="/join/">Overview</a></li> <li><a href="https://computerhistory.org/membership/">Membership</a></li> <li><a href="https://computerhistory.org/ways-to-give/">Ways to Give</a></li> <li><a href="https://computerhistory.org/donor-recognition/">Donor Recognition</a></li> <li><a href="https://computerhistory.org/institutional-supporters/">Institutional Supporters</a></li> <li><a href="https://computerhistory.org/volunteers/">Volunteers</a></li> </ul> <!-- /.menu.nested --> </li> <li class="search-icon desktop"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 512 512"> <g> <path d="M495,466.2L377.2,348.4c29.2-35.6,46.8-81.2,46.8-130.9C424,103.5,331.5,11,217.5,11C103.4,11,11,103.5,11,217.5 S103.4,424,217.5,424c49.7,0,95.2-17.5,130.8-46.7L466.1,495c8,8,20.9,8,28.9,0C503,487.1,503,474.1,495,466.2z M217.5,382.9 C126.2,382.9,52,308.7,52,217.5S126.2,52,217.5,52C308.7,52,383,126.3,383,217.5S308.7,382.9,217.5,382.9z" /> </g> </svg> </li> <li class="search-icon responsive"> <a href="#">Search <svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 512 512"> <g> <path d="M495,466.2L377.2,348.4c29.2-35.6,46.8-81.2,46.8-130.9C424,103.5,331.5,11,217.5,11C103.4,11,11,103.5,11,217.5 S103.4,424,217.5,424c49.7,0,95.2-17.5,130.8-46.7L466.1,495c8,8,20.9,8,28.9,0C503,487.1,503,474.1,495,466.2z M217.5,382.9 C126.2,382.9,52,308.7,52,217.5S126.2,52,217.5,52C308.7,52,383,126.3,383,217.5S308.7,382.9,217.5,382.9z" /> </g> </svg></a> </li> <li class="btn-nav-clear nav-display-desktop"> <a href="https://donate.computerhistory.org/computer-history-museum/" class="btn-nav btn-red chm-donate-popup">Donate</a> </li> <li class="btn-nav-clear nav-display-desktop"> <a href="https://connect.computerhistory.org" class="btn-nav btn-green ">Tickets</a> </li> </ul> <!-- /.menu --> </div> <div class="nav-section-top-menu"> <ul class="menu vertical large-horizontal top-menu" data-responsive-menu="drilldown large-dropdown"> <li> <a href="https://computerhistory.org/hours-admission/">Hours &#038; Admission</a> </li> <li> <a href="https://computerhistory.org/subscribe/">Subscribe</a> </li> <li> <a href="https://computerhistory.org/chm-events/">Upcoming CHM Events</a> </li> </ul> <!-- /.menu --> </div> </div> </div> <div class="search-wrapper"> <div class="container"> <form role="search" method="get" id="searchform" class="searchform" action="https://computerhistory.org/"> <div> <label class="screen-reader-text" for="s">Search for:</label> <input type="text" value="" name="s" id="s" /> <input type="submit" id="searchsubmit" value="Go" /> </div> </form> <a href="https://www.computerhistory.org/collections/search/" class="search-text">Or search the collection catalog <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="7" viewBox="0 0 10 7"> <defs> <path id="ehgga" d="M464.07 207.98h8.498v1.042h-8.498z" /> <path id="ehggb" d="M470.208 211.99l-.768-.73 2.906-2.76-2.906-2.76.768-.73 3.673 3.49z" /> </defs> <g> <g transform="translate(-464 -205)"> <g> <use fill="#175e61" xlink:href="#ehgga" /> </g> <g> <use fill="#175e61" xlink:href="#ehggb" /> </g> </g> </g> </svg> </a> </div> </div> </div> </header> <div class="container"> <section class="hero hero--plain"> <div class="hero__content"> <div class="content"> <h1>Andries van Dam</h1> <span>2021 Fellow</span> </div> <div class="hero__profile-img" style="background: url('https://computerhistory.org/wp-content/uploads/2021/02/chm_fellows_3_ig_1080x1080-1.jpg') center center no-repeat;"> </div> </div> <div class="hero__pattern"> <img src="https://computerhistory.org/wp-content/themes/bsdstarter/assets/img/hero-pattern.svg" alt=""> </div> </section> <section class="three-column-grid"> <div class="row"> <div class="three-column-grid__left"> <div class="hero__profile-img-main" style="background: url('https://computerhistory.org/wp-content/uploads/2021/02/chm_fellows_3_ig_1080x1080-1-155x155-c-default.jpg') center center no-repeat;"> </div> </div> <div class="three-column-grid__center "> <div class="wysiwyg"> <p><strong>For a lifetime of contributions to computer graphics, hypertext, and education</strong></p> <p><div class="blockquote"><div class="blockquote__pattern"></div><h3 class="blockquote__text" >I remain a techno-optimist, but as our field matures unbridled techno-solutionism can be naïve and even harmful. We must adopt a more tempered, systemic concern with socially responsible computing.</h3><h4 class="blockquote__author">— Andy van Dam</h4><div class="blockquote__pattern bottom"></div></div></p> <p><span style="font-weight: 400;">If you enjoy Pixar and Disney movies, there’s a good chance you’ve seen the influence of Andries (Andy) van Dam. Van Dam is professor of computer science (CS) and former vice president for research at Brown University. In his five-decade career, van Dam has taught over 10,000 students. More than 70 of them went on to become CS faculty, including eight chairs of top-ranked departments. With Jim Foley he coauthored the field-defining book, </span><i><span style="font-weight: 400;">Fundamentals of Interactive Computer Graphics</span></i><span style="font-weight: 400;">, in 1982. This book and its successors, also coauthored by van Dam, became the standard references in the field. Many of van Dam’s students have gone on to make major contributions to computer graphics, hypermedia, multimedia, and the online world.</span></p> <p><span style="font-weight: 400;">Van Dam also helped seed the online world that now absorbs so much of our time. In collaboration with Ted Nelson, van Dam and his students created a pioneering hypertext system and word processor, HES (Hypertext Editing System), in 1967. HES and Douglas Engelbart’s landmark NLS (oN-Line System) were the first two interactive hypertext systems. Over the next two decades, HES’ successors at Brown became a major thread within the development of hypermedia, multimedia and web-like systems.</span></p> <p><span style="font-weight: 400;">Van Dam and his students played important</span> <span style="font-weight: 400;">roles in the development of digital humanities, starting with the use of FRESS, the hypertext successor to HES, for teaching poetry in the 1970s under an NEH grant. In 1985 he cofounded the Institute for Research in Information and Scholarship (IRIS) to expand access to graphical, networked computing and the use of hypertext and multimedia across disciplines. His collaborations with faculty in the English and creative writing departments helped seed hypertext as a form of literature. </span></p> <p><span style="font-weight: 400;">Van Dam speaks passionately about the role of socially responsible computing and includes relevant topics in each of his courses. Over his long teaching career, he has made explicit efforts to encourage women to study computer science by actively encouraging them to become teaching assistants and mentors to other students. Van Dam’s use of undergraduates in research and teaching was essentially unknown when he began teaching in 1965.</span></p> <p><span style="font-weight: 400;">Originally appointed as an assistant professor of applied mathematics in 1965 to teach the then-nascent discipline of computer science, van Dam cofounded the computer science program at Brown as a joint project between the Divisions of Applied Mathematics and of Engineering. When the program became a full department, van Dam served as its first chair, from 1979 to 1985. In 1995, van Dam was appointed Thomas J. Watson, Jr. University Professor of Technology and Education and Professor of Computer Science.</span></p> <p><span style="font-weight: 400;">Van Dam was born in the Netherlands and moved to the United States as a teenager. He received his BS with honors in engineering sciences from Swarthmore College in 1960, and his MS and PhD from the University of Pennsylvania in 1963 and 1966, respectively. His doctorate, </span><i><span style="font-weight: 400;">A Study of Digital Processing of Pictorial Data</span></i><span style="font-weight: 400;">, is considered the second computer science PhD in the United States. In 1967 van Dam cofounded the precursor to ACM SIGGRAPH, the professional society for computer graphics.</span></p> <p><span style="font-weight: 400;">Van Dam has a number of awards as an educator and graphics pioneer, including SIGGRAPH’s Steven A. Coons award for outstanding creative contributions to computer graphics and its first Distinguished Educator award. In 1994 he became an IEEE Fellow and an ACM Fellow. He holds honorary doctorates from Swarthmore College, ETH (Zurich), Darmstadt Technical University, and the University of Waterloo. In 1996 he was inducted into the National Academy of Engineering, in 2000 he became a Fellow of the American Academy of Arts and Sciences, and in 2004 was elected a fellow of the American Association for the Advancement of Science.</span></p> </div> </div> </div> </section> <!-- related articles --> <div class="container"> <section class="related-articles"> <div class="related-articles__title-section"> <h2 class="related-articles__title">Related Articles</h2> <a href="https://computerhistory.org/blogs" class="related-articles__link">View All</a> </div> <div class="row"> <div class="related-articles__column"> <a href="https://computerhistory.org/blog/in-memoriam-thomas-e-kurtz-1928-2024/"> <div class="related-articles__img-wrapper"> <div class="related-articles__img" style="background: url('https://computerhistory.org/wp-content/uploads/2024/11/Thomas-Kurtz-memoriam-310x175-c-default.png') center center no-repeat"> </div> </div> <div class="related-articles__content"> <h5>CHM BLOG</h5> <h4>In Memoriam: Thomas E. Kurtz, 1928–2024</h4> <time class="post-date" datetime="2024-14-11">November 14, 2024</time> </div> </a> </div> <div class="related-articles__column"> <a href="https://computerhistory.org/blog/hearing-tech-history/"> <div class="related-articles__img-wrapper"> <div class="related-articles__img" style="background: url('https://computerhistory.org/wp-content/uploads/2024/10/Marty-and-Shayna-comparing-CI-Hardware-scaled-310x175-c-default.jpg') center center no-repeat"> </div> </div> <div class="related-articles__content"> <h5>CHM BLOG</h5> <h4>Hearing Tech History</h4> <time class="post-date" datetime="2024-22-10">October 22, 2024</time> </div> </a> </div> <div class="related-articles__column"> <a href="https://computerhistory.org/blog/the-optimism-of-gis/"> <div class="related-articles__img-wrapper"> <div class="related-articles__img" style="background: url('https://computerhistory.org/wp-content/uploads/2024/10/David-Yarnold-Dawn-Garcia-310x175-c-default.jpg') center center no-repeat"> </div> </div> <div class="related-articles__content"> <h5>CHM BLOG</h5> <h4>The Optimism of GIS</h4> <time class="post-date" datetime="2024-17-10">October 17, 2024</time> </div> </a> </div> </div> <a href="https://computerhistory.org/blogs" class="related-articles__link mobile">View All</a> </section> </div> </div> <div class="social-share__wrapper"> <div class="container social-share mobile"> <h2>Share</h2> <div class="addtoany_shortcode"><div class="a2a_kit a2a_kit_size_ addtoany_list" data-a2a-url="https://computerhistory.org/profile/andries-van-dam/" data-a2a-title="Andries van Dam"><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fcomputerhistory.org%2Fprofile%2Fandries-van-dam%2F&amp;linkname=Andries%20van%20Dam" title="Facebook" rel="nofollow noopener" target="_blank"><img src="/wp-content/themes/bsdstarter/assets/img/share_icons/facebook.png" width="32" alt="Facebook"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fcomputerhistory.org%2Fprofile%2Fandries-van-dam%2F&amp;linkname=Andries%20van%20Dam" title="Twitter" rel="nofollow noopener" target="_blank"><img src="/wp-content/themes/bsdstarter/assets/img/share_icons/twitter.png" width="32" alt="Twitter"></a><a class="a2a_button_copy_link" href="https://www.addtoany.com/add_to/copy_link?linkurl=https%3A%2F%2Fcomputerhistory.org%2Fprofile%2Fandries-van-dam%2F&amp;linkname=Andries%20van%20Dam" title="Copy Link" rel="nofollow noopener" target="_blank"><img src="/wp-content/themes/bsdstarter/assets/img/share_icons/link.png" width="32" alt="Copy Link"></a></div></div> </div> </div> <footer class="footer"> <div class="footer__top"> <div class="container"> <div class="footer-content-3"> <a class="logo" href="https://computerhistory.org" title="Computer History Museum home link"><img src="https://computerhistory.org/wp-content/themes/bsdstarter/assets/img/chm-logo-short.svg" alt="Computer History Museum Logo"></a> <div class="footer-term-conditions desktop"> <ul class="menu"> <li class="no-link"> <a href="#">CHM is a registered 501(c)3 organization. Your donation is tax-deductible to the extent permitted by law.</a> </li> <li class="no-link"> <a href="#">Tax ID 77-0507525.</a> </li> <li class=""> <a href="https://computerhistory.org/terms/">Terms of Use</a> </li> <li class=""> <a href="https://computerhistory.org/privacy/">Privacy</a> </li> <li class="no-link"> <a href="#">© 2024 Computer History Museum</a> </li> </ul> <!-- /.menu --> </div> </div> <div class="footer-content-4"> <div class="menu_one"> <ul class="menu" data-responsive-menu="drilldown large-dropdown"> <li> <a href="/press-releases/">Press</a> </li> <li> <a href="/jobs/">Careers</a> </li> <li> <a href="https://computerhistory.org/venue/">Venue</a> </li> </ul> </div> <div class="menu_two"> <ul class="menu" data-responsive-menu="drilldown large-dropdown"> <li> <a href="/events/">Events</a> </li> <li> <a href="/stories/">Stories</a> </li> <li> <a href="https://computerhistory.org/donate-now/">Donate</a> </li> </ul> <!-- /.menu --> </div> </div> <div class="footer-content-5"> <h2 class="widgettitle">Hours and Directions</h2> <div class="textwidget"><p><a href="/make-plan/">Hours &amp; Directions</a></p> <p>1401 N. Shoreline Blvd.</p> <p>Mountain View, CA 94043</p> <p><a href="tel:+16508101010">(650) 810-1010</a></p> <p>&nbsp;</p> <p><a href="/contact-us/">More Contact Info</a></p> </div> </div> </div> </div> </footer> <div id="pum-30192" class="pum pum-overlay pum-theme-20380 pum-theme-lightbox popmake-overlay pum-click-to-close click_open" data-popmake="{&quot;id&quot;:30192,&quot;slug&quot;:&quot;donate-button-trigger&quot;,&quot;theme_id&quot;:20380,&quot;cookies&quot;:[],&quot;triggers&quot;:[{&quot;type&quot;:&quot;click_open&quot;,&quot;settings&quot;:{&quot;cookie_name&quot;:&quot;&quot;,&quot;extra_selectors&quot;:&quot;.chm-donate-popup&quot;}}],&quot;mobile_disabled&quot;:null,&quot;tablet_disabled&quot;:null,&quot;meta&quot;:{&quot;display&quot;:{&quot;stackable&quot;:false,&quot;overlay_disabled&quot;:false,&quot;scrollable_content&quot;:false,&quot;disable_reposition&quot;:false,&quot;size&quot;:&quot;normal&quot;,&quot;responsive_min_width&quot;:&quot;px&quot;,&quot;responsive_min_width_unit&quot;:false,&quot;responsive_max_width&quot;:&quot;100%&quot;,&quot;responsive_max_width_unit&quot;:false,&quot;custom_width&quot;:&quot;640px&quot;,&quot;custom_width_unit&quot;:false,&quot;custom_height&quot;:&quot;380px&quot;,&quot;custom_height_unit&quot;:false,&quot;custom_height_auto&quot;:false,&quot;location&quot;:&quot;center&quot;,&quot;position_from_trigger&quot;:false,&quot;position_top&quot;:&quot;100&quot;,&quot;position_left&quot;:&quot;0&quot;,&quot;position_bottom&quot;:&quot;0&quot;,&quot;position_right&quot;:&quot;0&quot;,&quot;position_fixed&quot;:false,&quot;animation_type&quot;:&quot;fade&quot;,&quot;animation_speed&quot;:&quot;350&quot;,&quot;animation_origin&quot;:&quot;center top&quot;,&quot;overlay_zindex&quot;:false,&quot;zindex&quot;:&quot;1999999999&quot;},&quot;close&quot;:{&quot;text&quot;:&quot;&quot;,&quot;button_delay&quot;:&quot;0&quot;,&quot;overlay_click&quot;:&quot;1&quot;,&quot;esc_press&quot;:&quot;1&quot;,&quot;f4_press&quot;:&quot;1&quot;},&quot;click_open&quot;:[]}}" role="dialog" aria-modal="false" > <div id="popmake-30192" class="pum-container popmake theme-20380 pum-responsive pum-responsive-normal responsive size-normal"> <div class="pum-content popmake-content" tabindex="0"> <p><iframe id="wegiveembed" style="margin: 0px 0px 0px 0px; height: 675px; width: 100%;" title="Online Donations Form" src="https://donate.computerhistory.org/computer-history-museum/checkout/donor-portal-checkout-p" frameborder="0" scrolling="no" allowpaymentrequest="true" allow="payment"></iframe></p> </div> <button type="button" class="pum-close popmake-close" aria-label="Close"> &times; </button> </div> </div> <div id="pum-30970" class="pum pum-overlay pum-theme-30972 pum-theme-chm popmake-overlay pum-overlay-disabled auto_open click_open" data-popmake="{&quot;id&quot;:30970,&quot;slug&quot;:&quot;chatbot-announcement&quot;,&quot;theme_id&quot;:30972,&quot;cookies&quot;:[{&quot;event&quot;:&quot;on_popup_close&quot;,&quot;settings&quot;:{&quot;name&quot;:&quot;pum-30970&quot;,&quot;key&quot;:&quot;&quot;,&quot;session&quot;:false,&quot;path&quot;:&quot;1&quot;,&quot;time&quot;:&quot;1 month&quot;}}],&quot;triggers&quot;:[{&quot;type&quot;:&quot;auto_open&quot;,&quot;settings&quot;:{&quot;cookie_name&quot;:[&quot;pum-30970&quot;],&quot;delay&quot;:&quot;0&quot;}},{&quot;type&quot;:&quot;click_open&quot;,&quot;settings&quot;:{&quot;extra_selectors&quot;:&quot;&quot;,&quot;cookie_name&quot;:null}}],&quot;mobile_disabled&quot;:null,&quot;tablet_disabled&quot;:null,&quot;meta&quot;:{&quot;display&quot;:{&quot;stackable&quot;:&quot;1&quot;,&quot;overlay_disabled&quot;:&quot;1&quot;,&quot;scrollable_content&quot;:false,&quot;disable_reposition&quot;:false,&quot;size&quot;:&quot;custom&quot;,&quot;responsive_min_width&quot;:&quot;0px&quot;,&quot;responsive_min_width_unit&quot;:false,&quot;responsive_max_width&quot;:&quot;100px&quot;,&quot;responsive_max_width_unit&quot;:false,&quot;custom_width&quot;:&quot;100%&quot;,&quot;custom_width_unit&quot;:false,&quot;custom_height&quot;:&quot;68px&quot;,&quot;custom_height_unit&quot;:false,&quot;custom_height_auto&quot;:&quot;1&quot;,&quot;location&quot;:&quot;center top&quot;,&quot;position_from_trigger&quot;:false,&quot;position_top&quot;:&quot;0&quot;,&quot;position_left&quot;:&quot;10&quot;,&quot;position_bottom&quot;:&quot;20&quot;,&quot;position_right&quot;:&quot;10&quot;,&quot;position_fixed&quot;:&quot;1&quot;,&quot;animation_type&quot;:&quot;fadeAndSlide&quot;,&quot;animation_speed&quot;:&quot;300&quot;,&quot;animation_origin&quot;:&quot;top&quot;,&quot;overlay_zindex&quot;:false,&quot;zindex&quot;:&quot;999999999999&quot;},&quot;close&quot;:{&quot;text&quot;:&quot;X&quot;,&quot;button_delay&quot;:&quot;0&quot;,&quot;overlay_click&quot;:false,&quot;esc_press&quot;:false,&quot;f4_press&quot;:false},&quot;click_open&quot;:[]}}" role="dialog" aria-modal="false" > <div id="popmake-30970" class="pum-container popmake theme-30972 size-custom pum-position-fixed"> <div class="pum-content popmake-content" tabindex="0"> <div> <style> .ccfire { font-family: "DIN_1451 LT W01 Engschrift", Helvetica Neue, Helvetica, Arial, sans-serif !important; } .ccfire br { display: none; } </style> <p class="ccfire" style="text-align: center; color: #ffffff;"><a class="ccfire" style="font-size: 26px; text-transform: uppercase; color: #ffffff;" href="https://connect.computerhistory.org/events/6346af73-b2ee-3572-d519-2f2d2f18a311"><br /> Now Showing! Chatbots Decoded: Exploring AI. <u>Buy Tickets Now</u><br /> </a></p> </div> </div> <button type="button" class="pum-close popmake-close" aria-label="Close"> X </button> </div> </div> <script type="text/javascript" src="https://computerhistory.org/wp-includes/js/jquery/ui/core.min.js?ver=1.13.2" id="jquery-ui-core-js"></script> <script type="text/javascript" id="popup-maker-site-js-extra"> /* <![CDATA[ */ var pum_vars = {"version":"1.18.5","pm_dir_url":"https:\/\/computerhistory.org\/wp-content\/plugins\/popup-maker\/","ajaxurl":"https:\/\/computerhistory.org\/wp-admin\/admin-ajax.php","restapi":"https:\/\/computerhistory.org\/wp-json\/pum\/v1","rest_nonce":null,"default_theme":"20379","debug_mode":"","disable_tracking":"","home_url":"\/","message_position":"top","core_sub_forms_enabled":"1","popups":[],"cookie_domain":"","analytics_route":"analytics","analytics_api":"https:\/\/computerhistory.org\/wp-json\/pum\/v1"}; var pum_sub_vars = {"ajaxurl":"https:\/\/computerhistory.org\/wp-admin\/admin-ajax.php","message_position":"top"}; var pum_popups = {"pum-30192":{"triggers":[{"type":"click_open","settings":{"cookie_name":"","extra_selectors":".chm-donate-popup"}}],"cookies":[],"disable_on_mobile":false,"disable_on_tablet":false,"atc_promotion":null,"explain":null,"type_section":null,"theme_id":"20380","size":"normal","responsive_min_width":"px","responsive_max_width":"100%","custom_width":"640px","custom_height_auto":false,"custom_height":"380px","scrollable_content":false,"animation_type":"fade","animation_speed":"350","animation_origin":"center top","open_sound":"none","custom_sound":"","location":"center","position_top":"100","position_bottom":"0","position_left":"0","position_right":"0","position_from_trigger":false,"position_fixed":false,"overlay_disabled":false,"stackable":false,"disable_reposition":false,"zindex":"1999999999","close_button_delay":"0","fi_promotion":null,"close_on_form_submission":false,"close_on_form_submission_delay":"0","close_on_overlay_click":true,"close_on_esc_press":true,"close_on_f4_press":true,"disable_form_reopen":false,"disable_accessibility":false,"theme_slug":"lightbox","id":30192,"slug":"donate-button-trigger"},"pum-30970":{"triggers":[{"type":"auto_open","settings":{"cookie_name":["pum-30970"],"delay":"0"}}],"cookies":[{"event":"on_popup_close","settings":{"name":"pum-30970","key":"","session":false,"path":"1","time":"1 month"}}],"disable_on_mobile":false,"disable_on_tablet":false,"atc_promotion":null,"explain":null,"type_section":null,"theme_id":"30972","size":"custom","responsive_min_width":"0px","responsive_max_width":"100px","custom_width":"100%","custom_height_auto":true,"custom_height":"68px","scrollable_content":false,"animation_type":"fadeAndSlide","animation_speed":"300","animation_origin":"top","open_sound":"none","custom_sound":"","location":"center top","position_top":"0","position_bottom":"20","position_left":"10","position_right":"10","position_from_trigger":false,"position_fixed":true,"overlay_disabled":true,"stackable":true,"disable_reposition":false,"zindex":"999999999999","close_button_delay":"0","fi_promotion":null,"close_on_form_submission":false,"close_on_form_submission_delay":"0","close_on_overlay_click":false,"close_on_esc_press":false,"close_on_f4_press":false,"disable_form_reopen":false,"disable_accessibility":false,"theme_slug":"chm","id":30970,"slug":"chatbot-announcement"}}; /* ]]> */ </script> <script type="text/javascript" src="//computerhistory.org/wp-content/uploads/pum/pum-site-scripts.js?defer&amp;generated=1732227841&amp;ver=1.18.5" id="popup-maker-site-js"></script> <script type="text/javascript" src="https://computerhistory.org/wp-content/plugins/contact-form-7/includes/swv/js/index.js?ver=5.9.3" id="swv-js"></script> <script type="text/javascript" id="contact-form-7-js-extra"> /* <![CDATA[ */ var wpcf7 = {"api":{"root":"https:\/\/computerhistory.org\/wp-json\/","namespace":"contact-form-7\/v1"}}; /* ]]> */ </script> <script type="text/javascript" src="https://computerhistory.org/wp-content/plugins/contact-form-7/includes/js/index.js?ver=5.9.3" id="contact-form-7-js"></script> <script type="text/javascript" id="gforms_recaptcha_recaptcha-js-extra"> /* <![CDATA[ */ var gforms_recaptcha_recaptcha_strings = {"site_key":"6LemLLkUAAAAAAjc9RBh1WIYYyUREQ1QvL_YGx7w","ajaxurl":"https:\/\/computerhistory.org\/wp-admin\/admin-ajax.php","nonce":"213a24e2c0"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=6LemLLkUAAAAAAjc9RBh1WIYYyUREQ1QvL_YGx7w&amp;ver=1.4.1" id="gforms_recaptcha_recaptcha-js"></script> <script type="text/javascript" src="https://www.google.com/recaptcha/api.js?render=6LemLLkUAAAAAAjc9RBh1WIYYyUREQ1QvL_YGx7w&amp;ver=3.0" id="google-recaptcha-js"></script> <script type="text/javascript" src="https://computerhistory.org/wp-includes/js/dist/vendor/wp-polyfill-inert.min.js?ver=3.1.2" id="wp-polyfill-inert-js"></script> <script type="text/javascript" src="https://computerhistory.org/wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.14.0" id="regenerator-runtime-js"></script> <script type="text/javascript" src="https://computerhistory.org/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0" id="wp-polyfill-js"></script> <script type="text/javascript" id="wpcf7-recaptcha-js-extra"> /* <![CDATA[ */ var wpcf7_recaptcha = {"sitekey":"6LemLLkUAAAAAAjc9RBh1WIYYyUREQ1QvL_YGx7w","actions":{"homepage":"homepage","contactform":"contactform"}}; /* ]]> */ </script> <script type="text/javascript" src="https://computerhistory.org/wp-content/plugins/contact-form-7/modules/recaptcha/index.js?ver=5.9.3" id="wpcf7-recaptcha-js"></script> <script type="text/javascript" src="https://computerhistory.org/wp-content/themes/bsdstarter/assets/js/source.dev.js?ver=0.0.3" id="site-js-js"></script> <script type="text/javascript"> jQuery(document).ready(function ($) { // Function to update margin-top based on popup height function updateMargins() { var popupHeight = $('#popmake-30970').outerHeight(); if (popupHeight > 0) { // Ensure popupHeight is valid $('body').css('margin-top', popupHeight + 'px'); $('header').css('margin-top', popupHeight + 'px'); } } // Adjust margin-top when popup opens $(document).on('pumAfterOpen', '#pum-30970', function () { updateMargins(); // Add a resize listener for the duration the popup is open $(window).on('resize.popup', function () { updateMargins(); }); }); // Reset margin-top when popup closes $(document).on('pumAfterClose', '#pum-30970', function () { $('body').css('margin-top', '0'); $('header').css('margin-top', '0'); // Remove the resize listener when the popup closes $(window).off('resize.popup'); }); }); </script> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"3711322ece","applicationID":"406198101","transactionName":"MlYDZhdTWxJZAERcVwscIFERW1oPFxBZW18QXwBA","queueTime":0,"applicationTime":520,"atts":"HhEAEF9JSBw=","errorBeacon":"bam.nr-data.net","agent":""}</script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10