Suppose I decided to teach a course on the very latest technology available. The problem is available
is a relative term in graphics. Unlike many other fields in computing, the latest interactive graphics techniques generally require hard investment: cutting-edge graphics cards, latest operating systems, patched drivers, etc. Of course, many courses require students to invest in textbooks or other supplies and we could too, but the latest tech for graphics dwarfs those expenses by a wide margin.
Instead, we’re using a very widely available tech, WebGL2. Part of its wide availability is achieved by its being based on old tech: several years old when it was released1 WebGL 2.0 was released in January 2017.
OpenGL ES 3.2 had been out for a year and a half when WebGL 2.0 was released, but WebGL 2.0 was based on the then-five-year-old OpenGL ES 3.0 instead.
OpenGL 4.3 was released the same day as OpenGL ES 3.0, but OpenGL ES 3.0 was based on the then-three-year-old OpenGL 3.0 instead.
Vulkan was released a year before WebGL 2.0, but WebGL was still based on the then-twenty-five-year-old OpenGL line instead.
Each of these not-the-latest decisions increased ease and likelihood of adoption, provide assurance that the underlying tech as robust in practice, and allowed user experience to guide what parts of the previous tech to include and what to exclude.
WebGPU, a probable successor to WebGL based on Vulkan, is in a usable but still developing state with limited implementation and several important milestones still pending. At some point it will become a stable standard fully implemented by multiple web rendering engines. Once it is widely supported we expect the curriculum of this course to be updated to use it. and released several years ago. It is also based on a simple subset of available tech: tessellation, geometry, and compute shaders were common when WebGL2 was released but were not included in WebGL2 in part to make it smaller and easier to implement on resource-constrained platforms.
Thus, one reason we’re teaching older tech is that it’s the newest tech that we know you can all access.
The latest and greatest advances are made by people deep in the current technology and described for other people deep in the space to consume.
what’s newdocuments and
here’s something you can now dodemos which help people who knew the previous version learn the new version.
There’s a lag in each of these steps representing the additional cognitive effort needed to create the later items. Specs are generally stable for several months before release guides are produced; for more than a year before tutorials are created; and for several years before courses are ready. However, their duration of usefulness follows a similar trend: old specs are rapidly obsolescent, old release guides remain useful for a year or two, old tutorials remain useful for several years, and old courses can remain useful for decades2 I took computer graphics in college in 2004; roughly ⅔ of that content is still relevant in 2025.
Computer graphics is fortunately still in a space with strong competition. At the time of writing (2025) we have
This diversity of options may seem annoying for someone having to chose between similar-sounding options, but it fosters a rapid growth in technology at all levels. Without competition development tends towards the safe
options, favoring keeping current customers over attracting new ones. But with competition every company has a vested interest in getting something new out that can give them an advantage over others, resulting in a much more rapid pace of development.
One result of this is that by the time you finish a multi-year development project (or multi-year degree program), odds are that even if you started working with the very latest tech available, something new has come along during the process and it is not longer the latest tech when you’re done.
Perpetual obsolescence is one side effect of a healthy, thriving field.