Chris Khalil's Musings

My thoughts on work and life

Page 3 of 4

Kangaroo Valley & Palm Beach

Well, it’s been far, far too long since I last posted anything (4 months actually – damnit).  But I fully intend to get back on the blogging horse and thrash it!

I’m loving the new job and have got into the Sydney groove. So, aside from plenty of big nights out, I’ve also done a fair bit of exploration too.

I won’t go into my customary level of detail, but I’ve had weekends away in the Blue Mountains and more recently Kangaroo Valley and Palm Beach.

Both places were fantastic and I had a fabulous time with my friends savouring the views and the odd sip of vino (or is that bottle). Kangaroo Valley is just lush and green, and we took time to go canoeing through some quite beautiful scenery. We were lucky enough to see a water snake, plenty of lizards, spiders, some weird birdlife and even a wombat!

Palm Beach is part of Sydney’s Northern Beaches and lies just under an hour outside of Sydney. It’s the filming location for ‘Home & Away’. So, does have a few tourists but nothing like Manly or Bondi. It’s a great place to spend a sunday afternoon, sunbathing, reading, swimming and body surfing. We also checked out Whale Beach which was even better by our reckoning. It’s definitely an area we all want to visit again.

Well, more details and maybe even some more UX stuff to come shortly.

Pics here!

Palm Beach

Kangaroo Valley

Sydney to Manly – Beach trip

(See pictures of the journey to Manly)

I finally feel like I’m settling into Sydney life! It’s definitely a much warmer place than Melbourne (in Winter at least). I’ve been really keen to get to the beach for a couple of weeks now, and finally made it yesterday!!

Considering it’s the last week of winter the temperature was an incredible 24C. Strolled around the city for a while before boarding the Manly Ferry.

Sydney CBD
It really is the only way to travel. As you leave the city on the 30 minute journey, you leave stunning views behind you of the Opera House, Harbour Bridge, the botanical garden and the soaring skyscrapers of the city.

Manly itself is a great place, vibrant and with plenty of choice on the bar/restaurant front. We arrived just in time for a few glasses of wine and a seafood lunch on the seafront. Simply delightful. Full with great food and experiencing a mid-afternoon lull, we rested on the sunkissed beach looking out to the twinkling ocean and catching a few rays. The rest of the afternoon was spent walking, playing frisbee and generally failing to believe we all actually lived in such a beautiful place!

As the afternoon ebbed into early evening and we watched the sun descend over the horizon, we set back from Shelly Beach to Manly. As we followed the winding beach path, a strange blue light caught our eye to sea. It was for such a brief amount of time we thought our eyes were playing tricks on us. Then, once more, a wave crashed to the shore aglow with a neon blue light emanating through it. This was all very surreal, but it appeared there was some algae or material washing ashore that was phosphorescing. It really was the most incredible site, as we approached Manly more and more waves swept into shore, glowing an eerie blue in the ink dark night.

It was a magical moment. Sadly I was unable to catch it, as the fates weren’t smiling and both my camera battery ran out and the memory card screwed up!

Anyway, did manage to get some decent pics of Sydney itself

Harbour Bridge and Opera House

The Big Move: Melbourne to Sydney

After 2 fantastic years in Melbourne, it is with great sadness that I leave that amazing city and move on. A brilliant job opportunity at News Digital Media arose in Sydney that I just couldn’t resist. So, after a stressful few weeks of packing and saying my goodbyes, I got in the car and did the long and reflective drive to Sydney.

So here I am, I’ve managed to find somewhere to live in Pyrmont (see some pics), a few minutes walk from the new job and am slowly adjusting to my new surroundings. Sydney is a truly beautiful city, but it has its downsides. Transportation seems a bit less efficient than Melbourne, and the bars seem to close early (maybe I’ve been going to the wrong places!). Anyway, it’s early days yet, I’m hopeful that it will come to feel like home.

Queensland and NSW

See pictures of the holiday!!

What a holiday… How do I begin to describe the best holiday of my life. A holiday that included snorkelling on the great barrier reef, visiting the 3rd most beautiful beach in the world, the oldest rainforest in the world, the wildest white water rafting in Australia and New Zealand, encountering crocodiles, snakes and some of the most gobsmackingly beautiful scenery you can imagine. Well I suppose it’s always good to start at the beginning.

My flatmate Wayne had just spent 4 weeks in the UK and had decided to spend 10 days exploring the east coast of Australia. He bought over with him 2 friends from the UK, Isabelle and Mike, who are just brilliant. Two more funny and friendly people you couldn’t hope to meet.

They flew in to Brisbane, hired a car and met me a Ballina Byron airport. Jetlagged, but still lively we drove through the surprisingly green countryside (which, like Tasmania, reminded me of home) to our accommodation. The apartment we stayed in was elegantly decorated with a bohemian twist.

Byron Bay is quite a special place; the beach is lovely and has a natural beauty and grace about it which I’ve rarely encountered before. We strolled around, admiring the views and soaking up the warm, tropical air. We stayed in Byron Bay for 3 days, taking time to have a few rounds of golf, sunbathe, read and enjoy the vibe. Feeling suitably relaxed and refreshed we set off for the next stage of our journey – to the Whitsundays.

We stepped off the plane in Prosperine and our senses were immediately assaulted by the incredible heat. The father north we went, the hotter and more tropical the conditions became. We took a taxi from the Airport directly to Airlee Beach. Airlee is a small town, pretty much setup for backpackers and travellers – bars, restaurants and souvenir shops line the main high street. It’s popular because it really is the gateway to one of the last great paradises on Earth – the Whitsundays. This was to be our destination for the next 3 days, to cruise around the Whitsundays on a yacht called Anaconda III.

We boarded the yacht around 630 in the evening where we met a bunch of new people that we be our companions for this journey of wonder. We sat at the rear of the boat and gazed at the moonlight rippling on the water and dark islands that ebbed and flowed past us. We opened up some champagne and chatted idly with our new friends as we silently moved in the dark of night towards our first destination.

As the night wore on we made more and more frequent visits to a place that became very dear to our heart, the sacred beer fridge of delight! Finally around 2am only 4 of us remained; myself, Wayne and two great Irish girls called Edel and Sue. Reluctantly we decided it was time to hit the sack, we had a big day ahead of us.

When we awoke we were already on our way, our destination – Whitehaven beach, voted the 3rd most beautiful beach in the world. It’s only accessible by yacht and has the most incredibly pristine and pure white sand and crystal clear opal and blue water. It’s bordered by tropical forests. The sand is 98% pure silica meaning however hot the sun gets the sand stays cool. It really was something special; we went for a swim, gazed out to the endless horizon and simply soaked in this phenomenal place. We then set off for Luncheon Bay where we snorkelled amongst a shoals of brightly coloured fish. Luncheon bay is flanked by tall cliffs which seemed to stretch up forever. The crew beckoned us to come to the back deck, where Logan (the first mate) was whistling and throwing bits of chicken over the side of the boat. To our astonishment a Sea Eagle left it’s eerie high up on the cliffs and arrowed down to within a couple of meters of the boat, where it swopped and grasped within it’s talons the chicken, before soaring back up. It was an incredible sight seeing this enormous, fearsome bird at close sight. I will never forget that moment. Whilst we moored there we also encountered sea turtles and many large fish that swam around the boat.

The next day we set sail for the Great Barrier Reef. We dived off the boat and into an incredible underwater world, huge reefs spanned as far as the eye can see, thousands of fish surrounded us, and deep below dark shadowy fish navigated through the deep channels on either side of the reef. We swam back to the yacht where Giant Trevelly, 3-4 ft long surrounded us, it was just amazing. For the rest of the holiday we sunbathed, unwound, relaxed on beaches, snorkelled and watched the sunset over the ocean. This trip was incredible and we met many great new friends.

After 3 days of total relaxation and seeing and doing things I never thought I would, it was time to move on. We hired a car and set off for our next port of call, Mission Beach and white water rafting! After stopping for fish and chips in Townsville we arrived at our hostel and went to bed early as a big day awaited us on the rapids awaited us.

We got picked up and arrived at Tully, where we had an incredible and thrilling day riding Grade 4 rapids on the mighty Tully river. It was just amazing as we navigated our way down enchanting scenery with sheer cliffs rising steeply on either side, lush and green and yet the water we rode upon alternated between dead calm and raging hell. Whilst we were there we body surfed through bubbling and churning rapids, jumped off a 10m rock into the rolling river and tried rapid swimming and raft surfing. This was just the thrill we need to rock us back to reality after the tranquillity of the Whitsundays!

So, onto the last part of our trip, our journey to Cairns and the tropical, wet rainforests of Northern Queensland. Cairns is a great little town with some great architecture, and lovely restaurants. We stopped at a place called Red Ochre Grill (one of the top restaurants in Australia), where we tried a Crocodile starter followed by a game platter of Emu and Kangaroo. They were absolutely delicious!

We then struck even further north to the Daintree Rainforest (the oldest rainforest in the world), where we hiked through thick undergrowth encountering dizzying waterfalls, bubbling brooks and witnessed incredibly ancient plants. The forest is so dense and alive with life that struggle and fight each other to reach above the canopy and bathe in the life giving sunlight. From the heart of the rainforest we set off on a cruise of the jungles and forest of the Daintree river. The placed teemed with wildlife, we witnessed 5m crocodiles sliding menacingly through the water, tree snakes hunting frogs and beautifully coloured kingfishers.

So with a heavy heart our big adventure came to a conclusion, I left the guys in Cairns as I set forth home to Melbourne, and they journeyed on to Sydney.

Since I’ve been in Australia I’ve been privileged enough to see and experience things I never thought possible. But this journey really was the experience of a lifetime, it actually does take a while for your mind to absorb all the wonders it has witnessed. As I write this from home and reflect back on what I’ve seen and done, I can barely believe it. Life here continues to surprise and delight me.

TapeFailure – Record User’s Browsing Session

Just got wind of a new private beta, called TapeFailure. It sounds pretty exciting to me, and takes web analytics a step forward. By inserting a small 10k script in your page you can record and playback the actions a user takes on your web page.

I’ll be interesting to see how this pans out, and what affects it has on performance. If it works ok, I can see it becoming a fantastic way to do really discounted, cheap and dirty usability evaluation. Although you clearly won’t have access to the user directly, it should give some great insights on what users are doing in-situ and unaware of the monitoring.

Clearly, there may be some privacy issues, but let’s cross that bridge when we come to it.

Software as a Service – The Future of Software Apps

The word ‘service’ is increasingly becoming a bit of a buzz word, encompassing anything from SOA (Service-Oriented Architecture) to SaaS (Software as a Service). I think this is part of the increasing trend towards providing users (SaaS) and developers (SOA) with the ability to access just the information they require on demand and is an extension of the Web 2.0 movement.

It may very well lead to software being fragmented into it’s component parts, and being made available to users to syndicate and mashup – allowing new and interesting apps to emerge tailored to precisely the user’s requirements (more on this later). This is *really* important for business to consider, research firm Gartner forecasts that by 2011, 25% of new business apps will be delivered via SaaS, a jump from 5% in 2005.

SaaS allows users to access fully functioned software on the web through their browser without having to download anything (webmail is a great example of SaaS as opposed to a client side app like Outlook or Eudora). Users now have the ability to access software on a pay-as-you-use basis, giving the advantage that the application software can be upgraded on the fly without having to physically distribute it on a disc. This is an extension of the Beta zeitgeist that we see in Web 2.0 websites extended to full blown online apps (Rich Internet Applications or RIA’s).

A virtue of this is that any work that takes place on a SaaS app can be accessed anywhere at anytime (as long as the user is connected to the Internet). If you think about webmail, it allows you to access your email from any machine without having to worry about the platform or location. This metaphor can be extended to the new generation of SaaS apps that imitate the Office application suite.

For instance:

(which are both Word imitation RIAs) give you hosted disc space for free, allowing you to author a document anywhere and save it remotely on their hosted server. So, as an example I could author a document at home, get to work, login and continue to work on it (in the same way I can access my bookmarks anywhere on or my photos on Flickr).

The other advantage this has is that social networking comes into play, as documents can be released for public (or limited) consumption and worked on collaboratively or shared and tagged. With ever increasing bandwidth and end-user processing power I can see the old 90’s paradigm of the Network Computer returning. One could envisage a future where all storage is remote, all applications are loaded from the Internet and the machine exists only to access the network and run the browser.

As this trend progresses, we can expect web pages to be used for what they were originally intended, pure information/content sources. No longer will we have to shoe-horn workflows into step-by-step page views (i.e. buying an item etc) but can deliver them in the most efficient manner possible, which might be via the direct manipulation paradigm.

So, if this all sounds great, what are the downsides to SaaS? Well an obvious one is that these apps require the user to be online for them to operate, so how would this work if I’m offline (i.e. I want to write a document whilst on a train). Well, already technology is working to banish this restriction. Apollo by Adobe is a runtime framework which allows developers to create a container in which flash/flex/html/ajax can co-exist, but more than that it allows a webapp to be run on the desktop, independent of the network.

So we could expect something like ThinkFree/Writely/Zoho to run within an Apollo container, so the user can seamlessly work both offline and online. So if we go back to the example just mentioned, a user could work on their document at home (whilst a network connection is available) and save it. They are then free to hop onto a train and continue to work offline, then when they reach their destination and again have access to the Network, Apollo would synch it up with the mainline server – all without the user even realising it.

So if SaaS seems like the immediate future, then what lies beyond? Well, I think SaaS applications will evolve from being online facsimiles of desktop apps to a much more powerful suite of syndicated functionality from which the author can mashup their own personalised application, built to directly suit their purpose.

To help get your head around this consider how personalised homepages like NetVibes, Google/Yahoo allow you to create your own personalised information space. No longer do you need to navigate around several news sites to get the information you need, it comes to you, delivered in the way you want it, on demand, courtesy of RSS. This is precisely the sort of behaviour we’d see, but not stemming simply from information but actual functionality. Application mashups will allow the author to create a personalised app using syndicated functionality, taking remixability to a whole new level.

For instance, I might create a purpose built app that lets me type in a search term, pick a result, get the page content, edit it (in a word type app), the re-publish as another web page. Yahoo Pipes already allows the user to easily create these types of mashups, and I expect we will see something like this extended to allow much more powerful SaaS mashups in the future.

No longer will software have to exist in a single silo, forcing the user to switch their attention between different applications. User will be able to access a particular function on demand and link software silo’s together accessing just the slices they require.

So finally, where does the future of SaaS leave Usability and User Experience? Well in a very exciting position I think. Increasingly we will be released from the artificial barriers html imposes upon us and be able to have incredibly flexibility in the way we approach and solve problems. Information Architects will continue to play an important role in organising and structuring content, but Interaction Designers will truly be let off the leash!

Wilsons Prom

To see some pics of the trip, check out my photos page.

Had a brilliant weekend down at Wilsons prom, here in Victoria. We gathered together after work, and the girls went off ahead of us, and the lads followed a bit later. I drove the Beast – my 1987 Ford Laser – and faithful companion! It was a filthy evening, the rain hammered down all around us, and the journey was pretty hazardous. Visibility was really poor as we slowly made our way towards Sandy Point, our gateway to the Prom. Three hours later we cruised in, and the girls were ready and waiting, wine in their hands!

We had a few drinks, and put the BBQ on, eating some really delicious food (as we did all weekend) that Lisa made. I was knackered and hit the sack around 130am, but the others kept going until well into the night.

We awoke to grey skies, the rain still pouring heavily. With little else to do, we cracked open the beers. We had a fine day, drinking and chatting on the veranda waiting for the rain to stop. Eventually, the skies tired of the rain, and the sun emerged.

Mark, Anna and myself headed down to Sandy Point Beach (not for the last time that day, more of that to follow…) Sandy Point has this incredible surf beach, rugged and wild, it reminded me of my home in North Wales, where our house overlooks the wild Irish sea. It was a stirring moment, after we’d taken it all in, we headed home.

The BBQ was turned on again, and a delicious meal was concoted by Lisa, we had lamb shanks, prawns, sardines and chicken wings all marinaded in wonderful sauces. As the night drew on, Mark, Anna and myself decided to head to the beach. This turned into a bit of an adventure!

To reach Sandy Point beach you have to make your way through scrubland, bush and miles of sand. In the dark of night, it took some doing to get there. We didn’t even make it to the beach! The closest we got was a lookout point. We gazed ahead of us and up, at the glorious night sky in concert with the roar of the ocean. After some time, we were getting a bit cold and decided to head back. This was much, MUCH easier said than done! Needless to say we got horribly lost as we snaked our way through branches, marshland and the wilderness.

It really was dark, Mark burnt his fingers trying to keep the sole supply of light, a single lighter alive. It melted on his fingers and we were left wandering in the dark.

After HOURS we eventually found a road. The relief was incredible! We had a cheeky glass of wine to celebrate, but still had to decide which way to go. We saw a faint glow in the distance to our left and followed this, until we eventually found our way home (more by luck than design). It was now after 5am! If we weren’t so tipsy I’m sure we would have freaked out.

The next day, we packed up and headed to Wilsons Prom in glorious warm weather. It’s an incredible place, possibly the most beautiful place I’ve seen in Australia. It’s flanked by high mountains and is incredibly green and lush, a real haven from the general brown land that is currently Victoria (in the throws of a drought). We parked up, and hiked our way to Squeaky Beach, walking past dark Tea Tree lagoons, and lush green bush.

It’s a truly stupendous place, the sand is pure, brilliant white. It’s so called because the sand does actually squeak under your feet. It’s a multi-sensory experience. The sand is composed of white quartz and was once known as the singing sands due to noise it creates. We strolled down the beach, took in the clean air and vowed to return another day.

We then headed home, after a just fantastic weekend. Victoria really can be everything to everybody.

Customisable UI’s

Generally, most UI’s tend to embody specific characteristics which make the chosen design solution better suited to some users and contexts than others. However, it is often the case that during the design process a range of different designs will have been considered to match the diversity of user populations and contexts-of-use.

The real problem, however, is that users can often vary so greatly in terms of their knowledge, experience, social and cultural background (this is particularly the case in sovereign posture type apps). They often exhibit a wide variety of cognitive characteristics and affective traits. These characteristics are interrelated and shaped by context. Even when such variety is constrained by the nature of the work, and systems can be carefully designed and constructed to meet a well-defined need, the users will continue to learn and develop both through organisational changes and through individual users changing over time. So how can we design a system that is everything to everybody? Well we can’t, all we can do is design a system that works well for the majority of users in the majority of contexts. However, by designing in a degree of customisability and/or personalisation into the system we can offer a decent halfway house solution to some of these problems.

Customisable systems have a built in flexibility that can accommodate many of the different characteristics user may have; they are designed to accommodate a wider range of interactions than systems with a single fixed design. For example, successful interaction between a human and car is facilitated by the ability of the car to be tailored to our needs. We can adjust the height of the seat or the position of the steering wheel. The wealth of options on our computer systems allows us to adapt the systems to better suit our needs, habits, preferences and purposes. I can remove various parts of the functionality of a UI, for example by having ‘short menus’, in order to make it more appropriate to my purpose. I can alter short cuts, command keys to make often used functions easier and quicker to accomplish. By allowing the user to make the UI their own, and customise it to suit their particular needs we can increase their efficiency, effectiveness and satisfaction with the system. The alternative is to place some “intelligence” within the UI. This intelligence, can lead to the interface altering its form or presentation to suit the context of the task and the characteristics of the user. Adaptive UI’s haven’t really taken off, as users are not always comfortable sacrificing the locus of control to the machine, and may often be frustrated that the UI has altered it’s form without their consent.

So, for now customisable interfaces seem to offer an improved solution, although really well designed interfaces shouldn’t really alienate any type of user in the first place, regardless of their differences.

Golden Beach

Golden Beach

A few pics can be found on my Golden Beach pics page (more to follow).

Just got back from a truly wonderful weekend away (it was a long weekend here in Victoria due to Labour day). Five friends and I set off for Ninety Mile beach, to a sleepy little hamlet called Golden Beach. A few hours out of Melbourne, it’s is a real find. It has dramatic surf and long golden sands. Upon arrival we cracked open the beer and headed down for the beach, where we paddled and played a great game of cricket! We then headed back for the apartment and sat on the veranda drinking and chatting. As the night wore on we decided to take a moonlight stroll down the beach. The night sky was like nothing else I’ve ever seen. The firmament above was aglow with countless stars, it was a humbling feeling just to look up. I can honestly say, I don’t think I’ve ever seen quite so many stars (the closest I’ve got was high up a mountain in the Pyrenees). We drank a few glasses of wine and watched a blood moon rise over the roaring ocean.

The next day, was one of complete relaxation. We watched a couple of movies and then decided a spot of exercise was in order, so went for a game of golf. It would be fair to say that my team took a bit of a hammering which I must admit to not taking too well. I think the others picked up the subtle vibes I was giving off by the way I was throwing the golf clubs around! Still, it was only the second time that I’d played and I was more frustrated with myself than anything else. Come the evening we had a BBQ, a few more beers and chatted well into the night. A bit tipsy, we decided to have a game of Cranium. This was incredibly good fun but yet again we lost (it was very close).

On our last day, we had a fry up, enjoyed the sunshine and had one last game of golf, where I have to say I improved immeasurably 🙂 As long as I feel that I’m improving at something I enjoy it, so this was quite a different game for me than the day before. My team mates, Erica and Wayne were a great help, they were very patient and taught me a lot.

So, now I’m home and I’m already thinking about the possibility of the next weekend away, and reflecting on the great weekend past. But mostly I’ve been thinking about the those stars. They really were something else….


International users of computer software have come to expect their software to “talk” to them in their own language. In many cases language barriers and nationalism preclude end-users from utilising English-language software. This is only part of the problem though, even for those that understand English, a major issue is productivity. Users who understand a product fully will be more skilled in handling it and avoiding mistakes. On a purely financial level, globalised software will lead to greater potential for the introduction of products, both in terms of penetration of new emerging markets, and by allowing greater reach to users in existing areas.

The value of internationalising software and user interfaces for the international market is no longer in question and in my opinion over the next few years, markets will be divided between those players who succeed by understand the importance of fast globalisation i.e. simultaneous localization of their products into all markets in all languages, and those that fail. A successful global product or service is not made only for a single language group, it is made for a global community of users. The price of not understanding this can be pretty high, according to the U.S. State Department, U.S. firms alone lose $50 billion in potential sales each year because of problems with translation and localization.

Internationalisation, though, it is not an easy task It is therefore essential to understand the needs and requirements of the international marketplace as early as possible in the development cycle, and then to build the capability to support these into the product design and development processes. It is important to develop the product in a modular, extendible, and accessible way, so that when the need to localise for a particular market arises, the localisation can be done as easily and cheaply as possible. Few people have an issue with the idea of developing open systems these days. This means products that are developed with an eye to scalability, portability and interoperability. It is my contention that a fourth important dimension of any open system as we move into the global marketplace is localisability.

Multiple Versions of IE on same machine

At Acumentum we always test our designs on multiple browsers. As we all know, one of the great pains in our business is getting a design to look, as it should, across a variety of browsers.

Internet Explorer 6 is still the most common browser on the web, yet in our office most people are running Firefox 2.0 and IE7. This makes quick testing, as you go, a pain, as IE5, IE5.5, IE6 and IE7 cannot co-exist on the same machine…or at least that used to be the case.

One of the enterprising lads in the office found that some clever people at Tredosoft have created an installer (10.3 MB) that allows you to have all versions of IE available on the same machine.

This is one of the most useful tools I’ve seen this year.

The Quiet Usability Heuristics

We are all familiar with a variety of common heuristics which we can use to measure, test and design interfaces. However, there are a few that tend to get overlooked, but like all good children they deserve their day in the sun! In this post I’ll just touch on some of the key aspects of these. A quick search on the web will give whole reams of further information should you be interested.

Window Organisation: By decreasing the time the user spends adjusting, moving and re-sizing windows, we can increase the amount of time they spend concentrating on their real goal, and consequently increase user-satisfaction. By observing the relative locations and size of spawned windows in relation to the parent window and other related windows one can judge whether the placement is optimal. If a certain task requires the user to move windows around, and re-size them to achieve their goal, this is a sure-fire indication of bad usability.

Some key characteristics of good window organization are
– simple user navigation
– minimal and simple user window management

The textual aspect of interfaces is very important. Much of the information imparted by a UI is textual, therefore the layout and form of the text has a significant impact on the ease with which the user assimilates information. Since text is one of the primary sources of information for users it is important how it is worded. If the text is worded poorly then the users will perceive the interface poorly. Certain standards do exist for text size, labelling, fonts and formatting.

Clarity: Crowded screens are difficult to understand and hence are difficult to use. Experimental results show that the overall density of the screen should not exceed 40%, whereas local density within groupings shouldn’t exceed 62%. Items that are logically connected should be grouped together to communicate their implied association, and can be tested against. Clarity can be empirically determined through ratios of signal to noise at the interface.

There are many more less lauded UI heuristics out there, and in the coming weeks I’ll come back and talk more about these.

« Older posts Newer posts »