I just got back from a ballroom dance lesson with the same coach I've been working with since I first decided to discover movement a couple of years ago now--around the same time I started graduate school and realized I'd need social contact in my life with non-graduate student to remember what the real world was like! (Ironically, my coach? In addition to being a former ten dance champion, host of nationals, etc--currently an English graduate student.)
Yes, stay with me a moment, there is a point.
My partner and I have a competition coming up in a couple of weeks, so this lesson was spent running routines for latin over and over--four times through the cha cha, four times through the samba, the jive, the rumba, you get the idea. Sometime in the middle of one of those repetitions, my coach got as close to exasperated as it's possible for him to get and said to me, "You're one of the most expressive people I know...*except* on the dance floor."
So that got me thinking about what it means to be expressive, and where it's being expressed. A lot of people, when they start to dance, make the mistake of obsessing over wardrobe and makeup and hair. But when you go to a social dance, you can spot the great dancers in jeans and a t-shirt. The self-expression isn't in all the frills, although those frills can accent a great idea--take a look at Lacey and Lance's tango on Dancing with the Stars last week and you'll see what I mean:
Those costumes, however fabulous, are like the graphics on the scrolling site I put together this week (here)...self-expression? Of course. The point of this week's exercise? Not really. They're the means I thought most fitting to express the conceptual idea of the UI, not the UI itself. That routine and their movements make it work. This week, I tried to express something (admittedly, a very tiny something) through code, not through surface.
For instance: I could have tied my appendchild event to a mouseover of an image, or to a clickable "look here to see more" element. Instead, I tied it to the completion of scrolling, that is, to the viewing of all the available content. Would this annoy someone else from a usability standpoint--knowing that the user has no control over what happens, and no reason to expect more content? Probably. But I would be more annoyed at having to go through some extra step to get to the rest of the flow.
Coding doesn't seem like something for self-expression to a newcomer. That's why stealing code is so tempting: if someone else already wrote it, why do you need to do anything differently? It's the same thing as stealing a dance routine: they put these steps together and they work, so why wouldn't you do the same thing? Newcomers at comps usually dance the same routines they've all learned in classes from whatever coach teaches their school, so you can see dozens of couples dancing near each other all going through the same steps at once: an alamana, a closed hip twist, fan position, all in sync like they learned it for formation teams.