One of the first units I ever took at UWA was CITS1200 - Java programming. There was this fairly basic lab task involving drawing flags using a limited set of drawing commands. If I recall correctly, you were only allowed to use drawLine, so you had to implement your own methods to draw more complex shapes like circles or arcs. There were a set of flags in order of increasing difficulty, starting at effectively drawing rectangles, and working up to draw more complex shapes, with more complex flags earning you more points. There was also a set of flags categorised as ‘impossible’ to do - one of which was the Flag of Wales.
In 2012, I took the (then) newly offered CITS1401 a.k.a. Python programming. This was a fun unit, mostly because it was ridiculously easy. Ironically, it was one of the more useful units, purely because of how much I still use Python. Needless to say, that same flag drawing exercise came up, albeit this time in Python and using the Turtle API. Unfortunately the unit contents have changed since I took it, so I can’t find the reference. Unlike CITS1200 the labs weren’t marked, but there was a prize on offer for the best flag drawer (or something like that).
I don’t think I bothered much with the exercise itself because no marks were on the line, but I did have an idea - what if we could write a parser to interpret an SVG as a bunch of Turtle drawing commands? That way, we could draw even the previously ‘impossible’ flags.