Comment by wtallis

4 hours ago

There are a lot of UI concepts that are foreign to younger developers, simply because they grew up using web apps and smartphones. I think computer science departments need to make a class on human-computer interaction a mandatory part of the curriculum, and those classes need to require students to sit down with and actually use a variety of UIs from two, three, four decades ago. There's a ton of value in being conversant in the basic building blocks and paradigms of multiple UI systems, and in knowing what problems have been solved in the past so we don't keep badly reinventing the same features or failing to learn from the mistakes of the past.

There are a lot of things in older UIs that I think every developer should have hands-on experience with, eg. using nested menus in classic Mac OS; using an MDI application on Windows 9x; using the file browser and dock on NeXTSTEP; using X11 with focus follows mouse; anything with pie menus. Not because those things are necessarily the right choices for today's GUIs, but because there are valuable lessons to be learned from them, and reading an article like this or studying an old HIG document doesn't have the same impact.