Articles by Andrew

Owner of inkblurt.com

Throughout 2013 and part of 2014, I gave various versions of a talk entitled “The World is the Screen”. (The subtitle varied.)

The general contention of the talk: as planners and makers of digital things and places that are increasingly woven into the fabric of the world around us, we have to expand our focus to understanding the whole environment that people inhabit, not just specific devices and interfaces.

As part of that mission, we need to bring a more rigorous perspective to understanding our materials. Potters and masons and painters, as they mature in their work, come to understand their materials better and more deeply than they would expect the users of their creations to understand them. I argue that our primary material is information … but we don’t have a good, shared concept of what we mean when we say “information.”

Rather than trying to define information in just one way, I picked three major ways in which information affects our world, and the characteristics behind each of those modes. Ultimately, I’m trying to create some foundations for maturing how we understand our work, and how it is more about environments than objects (though objects are certainly critical in the context of the whole).

Anyway … the last version of the talk I gave was at ConveyUX in Seattle. It is a shorter version, but I think it’s the most concisely clear one. So I’m embedding it below. [Other, prior (and longer) versions are also on Speakerdeck - one from IA Summit 2013, and one from Blend Conference 2013. I also posted about it at The Understanding Group.]

I haven’t been inkblurting much here for a few months. There are a few reasons.

1. I’ve been writing and revising a book that I’ve been hammering away at for the last two years. I started writing it based on hunches about its subject, and vaguely literary aspirations of a “thought piece” sort of nonfiction tome that would be just so fascinating… only to discover that I really didn’t know what the hell I was writing about, and had to learn some actual science and stuff before I could say anything with any credibility. I mean, I’ve been doing information architecture and interaction design for a pretty long time, so I had that credibility, but when it comes to things like embodied cognition or how language works, well … it feels like I’ve been going back to grad school. But I’m glad I did the work, and it’s turning out nicely, at least from what I can tell from my bleary-eyed perspective, knotted like a homunculus in my digital bunker, gutting my overlong, meandering first draft, and wrangling what’s left into something I hope will do the job. Writing, man. Whaddya do?

2. I’ve also been posting the occasional bit over at the blog for my delightful employer, TUG (The Understanding Group). A few of them have included some thoughts on how no project is ever just what we see on its face, so we should design the “meta” side of the project as much as the thing the project is supposedly for. Another on how information architecture and business strategy have a long relationship, that’s becoming even more interdependent. And a couple of posts about stuff I presented at Midwest UX, including a workshop I co-led with colleague Dan Eizans, on Making Places with IA & Content Strategy, and my solo talk about maps and territories and how language creates places. I’m fairly obsessed with this whole language-as-infrastructure thing, which is leading me to also do a talk on that topic at IA Summit this March in San Diego.

3. Speaking of IA Summit, I’m proud and pleased to be co-teaching a new workshop there with the brilliant and wise Jorge Arango. It’s about Information Architecture Essentials, and proceeds will go to the Information Architecture Institute. We hope the content will be enlightening and useful, and a nice overview of some basic IA stuff, but also where IA is headed as a practice & discipline. We think old hands will get something out of it, not just newcomers. Fear not, although there will be “theory,” we’re packing it with practical goodness, and structuring it along a typical project timeline. Groundedness FTW.

So what on earth would prompt me to actually write a personal blog post after about a six-month gap?

I suppose it’s a combination of things. My daughter just started her senior year of high school, which obviously brings some rumination along the lines of how the hell did that much time pass that fast. Plus it’s Labor Day weekend, which has several weighty too-large-for-carryon chunks of personal baggage for me. I won’t go into all that, but something I ran across earlier today seriously picked the lock on my memory-closet.

It was this picture, in the middle of a bunch of other pictures of abandoned amusement parks.

Abominable Snowman From flickr user stevesobczuk

Abominable Snowman – Flickr User stevesobczuk

See, when I was a kid growing up around Atlanta through the 70s and early 80s, my family would generally end up going to Panama City Beach for vacation — often around this time of year. I didn’t know it at the time, but I benefited from a unique period in that area’s history. It was in the midst of the first big boom in tourism there, which evidently had started in the early/mid-60s (my parents told me stories of sleeping on its nearly deserted beaches in the 50s, their Chevy parked beside them). But it was before PC Beach became synonymous with MTV-style spring breakers in the 80s and 90s, and before the real estate land-grab of the 2000s which razed almost everything left of the indigenous culture (such as it was) in favor of gigantic condo developments.

I wasn’t much of a beach person even as a kid. I mean, I had fun on the beach — digging for sand crabs, daring waves to knock me down, making sand castles, and getting seriously sunburned. But for me it was all prelude to visiting the amusement parks in the area at night. Especially the “Miracle Strip Amusement Park.”
This picture in particular was of the Abominable Snowman ride, where they basically had a classic Scrambler ride inside a big dome, with the snowman crouched over the door. The snowman dome wasn’t added until I was about 12, but I have vivid memories of waiting what seemed forever to get into the dome to get slung around in the dark with giant speakers pumping Van Halen and a light show timed to the music — and especially the air conditioning inside, which made the wait all the more worthwhile. Few things are so wrapped up with my visceral memories of early adolescence.

My favorite parts of the park were the scary ones, though; and those are the parts that tap into my very early memories of the sort of thing that still scares and thrills me the most. Miracle Strip had two “dark” attractions: one was a Haunted Castle, which had cars on tracks that would take you through jarring, loud haunted-funhouse moments, including a terrifically psychedelic twirling tunnel.
The other was a walk-through attraction called the Old House, complete with a hidden passage behind a fireplace, and a balcony that would drop at an angle suddenly and blow air up from its floor to feel as though you were about to fall to the ground two floors below.

An early publicity picture for the Old House attraction from Flickr user kingpowercinema

An early publicity picture for the Old House attraction from Flickr user kingpowercinema


Read the rest of this entry »

The 2013 World IA Day was a huge success. Only its 2nd year in existence, and it had big crowds in 20+ locations (15 official). Congratulations to everyone involved in organizing the day, and to the intrepid board members of the IA Institute who decided to risk transforming the more US-based IDEA conference into this terrific, global, community-driven event.

I was fortunate to be asked to speak at the event in Ann Arbor, MI, where I talked about how information shapes context — the topic I’ve been writing a book about for a while now. I’ll probably continue having new permutations of this talk for quite some time, but here’s a snapshot at least, describing some central ideas I’m fleshing out in the book. I’m calling this “beta 2″ — since it has somewhat different and/or updated content vs the one I did for CHI Atlanta back in the fall of 2012.

Video and Slides-with-notes embedded below. Enjoy!

 

 

I’ve been writing a book on designing context for about a year now. It’s been possibly the most challenging thing I’ve ever done.

I’m starting to see the end of the draft. It’s just beyond my carpal-tunnel-throbbing clutches. Of course, there are still many weeks of revision, review, and the rest still to go.

When I proposed the book to O’Reilly Media, I included an outline, as required. But I knew better than to post that outline anywhere, since I figured it would likely change as I wrote. It turns out, I was more right than I knew. So many of the hunches that nudged me into doing this work turned out to be a lot more complicated, but mostly in a good way.

One major discovery for me was how important the science around “embodied cognition” would be to sorting all this out; also, how little I actually knew about the subject. Now, I find myself fully won over by what some call the “Radical Embodied Cognition” school of thought. An overview of the main ideas can be found in a post at the Psych Science Notes blog, written by a couple of wonderful folks in the UK, from whom I’ve learned a great deal. (They also tweet via @PsychScientists)

At this point, I think the book has a fairly stable structure that’s emerged through writing it. There are 5 chapters; I have about 1/3 of the 4th chapter, and the 5th chapter, to go. (These shouldn’t take me nearly as long as the earlier stuff, for which I had to do a lot more research and learning.)

Partly to help explain this structure to myself, I came up with a diagram that shows how the points covered early on are revisited and built upon, layer by layer. (Touch/click to see full size in separate window)

contextbook_structure_diagram_jan17b

 

Admittedly, the topics listed here don’t sound like a typical O’Reilly book; some might look at it and say “this is too theoretical, it’s not practical enough for me.” But, as I mention in the (still in draft) Preface, “there’s nothing more practical than understanding the properties of the materials you work with, and the principles behind how people live with the things you make.”

There will be “practical examples” of course, though perhaps not every 2-3 pages like in many UX-related books. (Nothing wrong with that, of course, it’s just not as appropriate for this subject matter.)

However — I’m still in the thick of writing, so who knows what could change? Now back to the manuscript. *typetypetypetype*

 

 

 

 

Roughly Half Done

Yesterday I turned 45 years old. For some reason, as I got up this morning, it hit me more than it did the day before.

Here are a few thoughts about it.

I’m technically halfway to 90 years old. I hope to live even longer than that, even though it’s older than the current average age of departure. But assuming the next 45 years will result in even better technologies for keeping us alive, I’m being optimistic. Still, there’s no denying this is, officially, “middle age.”

I don’t feel middle aged though. At least not emotionally. I’m starting to learn from others that this is not unusual. We all evidently wrestle with how we perceive our relationship with “time” — which is such a reified, non-thing to begin with.

Part of me would love to feel what I assume is a level of authority and confidence that comes with hitting time-based number that most would agree is undeniably “adult.” That’s the insecure part of me, though. The one that depends on something outside of me to tell me what and who I am. On a daily basis, I have to put that part of me in “time out.” It speaks out of turn and still isn’t quite housebroken.

Nowadays I have to work harder to catch myself resting on laurels or assumptions from prior experience. My eye-roll reflex is now nimbler and quicker on the draw than when I was younger. And that’s a dangerous reflex to exercise. When I notice myself being unthinkingly dismissive of a new idea, or an old idea revived in a new situation, I feel a little like Roy Batty in Bladerunner, catching his limbs in the first stages of rigor mortis, willing them to keep moving. Luckily I don’t have to stab myself with a nail. I just have to breathe, and remember to listen more closely. (Not that I find either of those things easy; some days I’d rather stick myself with a nail.)

I’m glad I’m working in a job where the company is still finding itself, watching itself evolve. It feels more like the old meaning of “company” — a group of companions, compatriots, fellow travelers.

I’m glad I’m working on this crazy book about stuff that I still wonder if I fully understand. I’m having to learn things in order to write it, and I’m never sure if I’m fully grasping and articulating the material; but I suppose that’s better than the comfortable stasis of writing only certainties. Even though I have weekly battles of self-doubt, I’m learning so much, and accomplishing something I never thought I’d have the wherewithal to do.

My wife and I are moving again, back to Philadelphia. We’ve been wanting to finally end up someplace where we could say “this is where we live” and put down some roots, at least for a while. So we’re going back to the place where we met, and where, when we feel homesick, it’s for that place. Is this going backward? Maybe. But only if we expect to be the same people we were when we lived there before. We’re not. We’ve grown a lot in four years; changed. Plus, now we have a dog. So we’ll see.

And watching my daughter become who she is becoming. Almost 17 now. Kind, intelligent, curious, good. Her mother has worked miracles in raising her. My daughter, who has to learn her own lessons, find her own way, no matter how much her parents would like to carve a safe, happy path in front of her. What a bracing, beautiful paradox it is, to have the power to bring a human being into the world, but be so utterly powerless in the face of their own story that only they can make.

So. Halfway. Even this far into my own story, I’m still a rough draft. I suppose I’ve always felt “half done” about most things, even the ones I’ve technically finished. I’ve always felt suspended between the poles of “making” and “unmaking.” There are more days, now, when I feel at peace with that unmoored oscillation. Not many, but more.

 

I’ve been doing some writing over at the blog for The Understanding Group.

  • Last month, I posted on e-commerce, and how it’s really just commerce now, but there are still many legacy impediments for retailers.
  • And this week, I wrote a bit about the talk I gave at WebVisions Portland in May (with an interview video, and my slides) on “Happiness Machines.”

 

Andrea Resmini and co-organizers of the upcoming workshop on Architectures of Meaning (part of the Pervasive Computing conference at Newcastle University in the UK) asked me to participate this year. I’m not able to be there in person, unfortunately, but plan to join remotely. What follows is the “paper” I’m presenting. It’s not a fully fledged academic piece of writing — more like a practitioner-theorist missive.

I’m sharing it here because others may be curious, and it’s also the best summary I’ve done to date of the ideas in the book I’m writing on IA and designing context.

This is a straight dump from MS Word (with a few tweaks). Caveat emptor.

 

Information Architecture and the Composition of Context

Andrew Hinton

Final Draft for Architectures of Meaning Workshop

June 18, 2012

 

Introduction

We lack fully articulated models for context, yet information architecture is especially significant in how context is created, changed or communicated in digital-based information environments. This thesis proposes some principles, models and foundational theories for the beginnings of a framework of context and proposes composition as a rubric for tying these ideas together into IA practice.

The thesis follows a line of reasoning thus:

Context is constructed.

There’s a deep and wide intellectual history around the topic of context. Suffice it to say that there are many layers and threads in the ongoing conversation among experts on the subject. Even though all those threads don’t agree on every point, they add up to some generally accepted ideas, such as:

  • Context is both internal and external. Our minds and bodies determine and influence how we perceive reality, and that internal experience is affected by external objects and interactions. Both affect one another to the point where the distinction between “inner” and “outer” is almost entirely academic.
  • Context has both stable and fluid characteristics. Certainly there are some elements of our lives that are stable enough to be considered “persistent.” But our interactions with (and understanding of) those elements still can make them mean something very different to us from moment to moment. Context exists along an undulating spectrum between those poles.
  • Context is social. Our experience of context emerges from a cognitive history as social beings, with mental models, languages, customs — really pretty much everything — originating from our interactions with others of our kind.

Context is not so simple as “object A is in surrounding circumstance X” — the roles are interchangeable and interdependent. This is why context is so hard to get our hands around as a topic.

(In particular, I’m leaning on the work of Paul Dourish, Bonnie Nardi, Jean Lave, Marcia Bates and Lucy Suchman.)

Context is about understanding.

This phenomenological & post-modern frame for context necessarily complicates the topic — not to point out these complexities would keep us from getting at a real comprehension of how context works.

Still, it can be helpful to have a simple model to use as a compass in this Escher-like landscape.  Hence, the following:

Context is conventionally defined as the interplay between several elements:

  • Situation: the circumstances that comprise the setting (place, time, surroundings, actions, etc.). The concept of “place” figures very heavily here.
  • Subject (Event/Person/Statement/Idea): the thing that is in the situation, and that is the subject of the attempted understanding.
  • Understanding: an apprehension of the true nature of the subject, through awareness and/or comprehension of the surrounding situation.
  • Agent: the individual who is trying to understand the subject and situation (this element is implied in most definitions, rather than called out explicitly).

Context, then, is principally about understanding. There is no need for discussion of context unless someone (agent) is trying to understand a subject in a given situation. That is, context does not exist out in the world as a thing in itself. It emerges from the act of seeking to understand.

This also forms a useful, simple model for talking about context and parsing the elements in a given scenario. However, it gets more complicated due to the ideas, mentioned above, about how context is constructed. Just a few of the wrinkles that come to light:

  • There can be multiple subjects, even if we understand them by focusing on (or foregrounding) one at a time.
  • The subject is also always part of the situation, and any of the circumstances could easily be one or more subjects.
  • In fact, in order to understand the situation, it has to be focused on as a subject in its own right.
  • All of these elements affect one another.
  • Importantly, the subject may be the agent. And there can be multiple agents, where another observer-agent may be able to understand the situation better than the subject-agent, because the subject-agent “can’t see the forest for the trees.” In design for a “user” this is an especially important point, because the user is both agent and subject — a person trying to understand and even control his or her own context.

As you can see, what looks like a simple grammar of what makes context can actually expose a lot of complexity. But this simple model of elements helps us at least start to have a framework for picking apart scenarios to figure out who is perceiving what, which elements are affecting others, and where understanding is and isn’t happening.

In order to unravel this massive tapestry, we have to grab a thread; a good one to grab is what we mean by “understanding.”

And that means we have to understand cognition, which is the engine we use for understanding much of anything.

Read the rest of this entry »

I’m very happy to announce I’m joining The Understanding Group as an Information Architect.

I’m a big believer in TUG’s mission: using information architecture to make things “be good.”

Since I’ve been blathering on and on about the importance of IA for over a decade now, I figured I might as well put my career where my mouth is and join up with this exciting new firm that has IA as its organizing principle. It doesn’t hurt that the people are pretty awesome too.

For the time being I’ll still be living in Atlanta, but traveling on occasion to Michigan, NYC and wherever else necessary to collaborate with clients and team members.

But unfortunately, going on to something new means having to leave behind something else.

I want to say that I’ll miss working with the great people at Macquarium. The two years I’ve spent with “MQ” have been among the best of my career, in terms of the practitioners I’ve gotten to know, the clients I’ve been able to partner with, and the fascinating, challenging work I’ve gotten to do.

Macquarium is doing some of the most cutting-edge work I’ve heard of in the cross-channel, service-design and organizational design spaces. I’m very fortunate to have had the chance to be part of their team.

 

 

I’ve been thinking a lot lately about responsiveness in design, and how we can build systems that work well in so many different contexts, on so many different devices, for so many different scenarios. So many of our map-like ways of predicting and designing for complexity are starting to stretch at the seams. I have to think we are soon reaching a point where our maps simply will not scale.

Then there are the secret-sauce, “smart” solutions that promise they can take care of the problem. It seems to happen on at least every other project: one or more stakeholders are convinced that the way to make their site/app/system truly responsive to user needs is to employ some kind of high-tech, cutting-edge technology.

This can take the form of clippy-like “helpers” that magically know what the user needs, to “conversation engines” that try to model a literal conversational interaction with users, like Jellyvision, or established technologies like the “collaborative filtering” technique pioneered by places like Amazon.

Most of the time, these sorts of solutions hold out more promise than they can fulfill. They aren’t bad ideas — even Clippy had merit as a concept. But to my mind, more often than not, these fancy approaches to the problem are a bit like building a 747 to take people across a river — when all that’s needed is a good old-fashioned bridge. That is, most of the time the software in question isn’t doing the basics. Build a bridge first, then let’s talk about the airliner.

Of course, there are genuine design challenges that do seem to still need that super-duper genius-system approach. But I still think there are more “primitive” methods that can do most of the work by combining simple mechanisms and structures that can actually handle a great deal of complexity.

We have a cognitive bias that makes us think that anything that seems to respond to a situation in a “smart” way must be “thinking” its way through the solution. But it turns out, that’s not how nature solves complex problems — it’s not even really how our bodies and brains work.

I think the best kind of responsiveness would follow the model we see in nature — a sort of “embodied” responsiveness.

I’ve been learning a lot about this through research for the book on designing context I’m working on now. There’s a lot to say about this … a lot … but I need to spend my time writing the book rather than a blog post, so I’ll try to explain by pointing to a couple of examples that may help illustrate what I mean.

Consider two robots.

One is Honda’s famous Asimo. It’s a humanoid robot that is intricately programmed to handle situations … for which it is programmed. It senses the world, models the world in its brain and then tells the body what to do. This is, by the way, pretty much how we’ve assumed people get around in the world: the brain models a representation of the world around us and tells our body to do X or Y. What this means in practice, however, is that Asimo has a hard time getting around in the wild. Modeling the world and telling the limbs what to do based on that theoretical model is a lot of brain work, so Asimo has some major limitations in the number of situations it can handle.  In fact, it falls down a lot (as in this video) if the terrain isn’t predictable and regular, or if there’s some tiny error that throws it off. Even when Asimo’s software is capable of handling an irregularity, it often can’t process the anomaly fast enough to make the body react in time. This, in spite of the fact that Asimo has one of the most advanced “brains” ever put into a robot.

Another robot is nicknamed Big Dog, by a company called Boston Dynamics. This robot is not pre-programmed to calculate its every move. Instead, its body is engineered to respond in smart, contextually relevant ways to the terrain. Big Dog’s brain is actually very small and primitive, but the architecture of its body is such that its very structure handles irregularity with ease, as seen in this video where, about 30 seconds in, someone tries to kick it over and it rights itself.

The reason why Big Dog can handle unpredictable situations is that its intelligence is embodied. It isn’t performing computations in a brain — the body is structured in such a way that it “figures out” the situation by the very nature of its joints, angles and articulation. The brain is just along for the ride, and providing a simple network for the body to talk to itself. As it turns out, this is actually much more like how humans get around — our bodies handle a lot more of our ‘smartness’ than we realize.

I won’t go into much more description here. (And if you want to know more, check this excellent blog post on the topic of the robots, which links/leads to more great writing on embodied/extended cognition & related topics.)

The point I’m getting at is that there’s something to be learned here in terms of how we design information environments. Rather than trying to pre-program and map out every possible scenario, we need systems that respond intelligently by the very nature of their architectures.

A long time ago, I did a presentation where I blurted out that eventually we will have to rely on compasses more than maps. I’m now starting to get a better idea of what I meant. Simple rules, simple structures, that combine to be a “nonlinear dynamical system.” The system should perceive the user’s actions and behaviors and, rather than trying to model in some theoretical brain-like way what the user needs, the system’s body (for lack of a better way to put it) should be engineered so that its mechanisms bend, bounce and react in such a way that the user feels as if the system is being pretty smart anyway.

At some point I’d like to have some good examples for this, but the ones I’m working on most diligently at the moment are NDA-bound. When I have time I’ll see if I can “anonymize” some work well enough to share. In the meantime, keep an eye on those robots.

 

 

 

Tonight, I ran across some files from 2002 (10 yrs ago), some of which were documents from the founding of the IA Institute. At some point I need to figure out what to do with all that.

But among these files was a text clipping that looks as if it was probably part of a response I was composing for a mailing list or something. And it struck me that I’ve been obsessing over the same topics for at least 10 years. Which is … comforting… but also disconcerting. I suppose i’m glad I’m finally writing a book on some of these issues because now maybe I can exorcise them and move on.

Here’s the text clipping.

I agree it’s not specific to the medium. If you can call the Internet a medium. I really think it’s about creating spaces from electrons rather than whole atoms.

If putting two bricks together is architecture (Mies), then putting two words together is writing. The point is that you’re doing architecture or writing, but not necessarily well. Both acts have to be done with a rationale, with intention and skill. And their ultimate success as designs depend upon how well they are used and/or understood.

But what about putting two ideas together, when the ideas manifest themselves not as words alone, but as conceptual spaces that are experienced physically, with clicking fingers and darting eyeballs. No walking necessary, just some control that’s quick enough to follow each connecting thought.

What really separates IA from writing? I could say that putting About and Careers together is “writing” … It’s a phrase “about careers.” But if I put About and Careers together in the global navigation of a website, with perhaps a single line between them to separate them, there’s another meaning implied altogether.

Yet those labels are just the signs representing larger concepts, that bring with them their own baggage and associations, and that get even weirder when we put them together (they tend to exert force on one another, like gravity, in their juxtaposition). The decision to name them as they are, to place the entryways (signs/labels) to these areas in a globally accessible area of the interface, to group them together, and how the resulting “rooms” of this house unfold within those concepts — that’s information architecture.

We use many tools for the structuring of this information within these conceptual rooms, and these can include controlled vocabularies, thesauri, etc. There is a whole, deep, ancient and respected science behind these tools alone. But just as physics and enginnering do not make up the whole of physical Architecture, these tools do not make up the whole of Information Architecture.

Why did we not have to think about this stuff very much before the Web? Because no electron-based shared realities were quite so universally accessed before. Yes, we had HCI and LIS. Yes, we had interaction design and information design. We had application design and workflow and ethnographic discovery methods and business logic and networked information.

But the Web brings with it the serendipitous combination of language, pictures, and connections between one idea and another based on nothing but thought. Previous information systems were tied primarily to their directory structures. But marrying hypertext (older than the web) to an easy open source language (html) and nearly universal access, instantaneously from around the world (unlike hypertext applications and documents, such as we made with HyperCard) created an entirely new entity that we still haven’t gotten our heads around quite yet.

We’re still drawing on cave walls, but the drawings become new caves that connect to other caves. All we have to do is write the sign, the word, the picture, whatever, on the wall, and we’ve brought another place into being.

I wonder if Information Architecture can be seen as Architecture without having to worry so much about time and space? Traditional architecture sans protons and nuclei?

What if Jerusalem were an information space rather than a physical one? I wonder if many faiths could then somehow live there together in peace, with some clever profile-based dynamic interface control? (One user sees a temple, another sees a mosque?)

I wonder if Information Architecture is more about anthills and cowpaths than semantic hierarchies?

I wonder if MUSH’s, MOO’s and Multiplayer Quake already took Information Architecture as far as it’ll ever go, and we’re just trying to get business-driven IA to catch up?

 

Reading this now is actually disturbing to me. Not unlike if I were Jack Torrance’s wife looking at his manuscript in The Shining … but then realizing I was Jack. Or something.

So. Exorcism. Gotta keep writing.

 

Thanks for checking out the post, however …

I’ve moved the information about the book over to its own page.

Cheers!

« Older entries