Building grahamharper.ie

One of my goals with this site was to use it as an opportunity to learn and try out new things. That’s why I decided to build it with Kirby, a small CMS written in PHP that uses static text files instead of a database. I work with Wordpress quite a lot and Kirby’s no-database design intrigued me. My use-case was simple, all I needed was a blog, a portfolio and a few pages. There would only be one writer. I was liked Kirby’s solution for templating. Instead of using yet another tempting language Kirby just uses straight PHP. So when you’re building Kirby templates you’re also learning a transferable skill. Kirby looked like a perfect fit.

Installing Kirby is refreshingly easy. All you do is download the files, put them on a web server running PHP and navigate to the site. That’s it. That could be locally on something like MAMP or on pretty much any web host out there. I already had some cheap shared web hosting I used for this site but at some stage I may switch over to a more modern host like Digital Ocean, who I’ve started using on some projects. They’re very affordable and give you the power and control having your own virtual server offers.

Kirby is a very flexible little CMS that tries not to make too many assumptions about your content. That said, setting up Kirby to serve a blog does take a little bit more work than something like Wordpress which is designed out of the box for that purpose. There is a very good guide on Kirby’s site on how to setup a blog. I’ll probably go into more detail about my experiences with Kirby in future posts.

Another new tool I used was the Skeleton CSS framework. I’ve been using Bootstrap for years and thought I give another, smaller, framework a try. All I really wanted was a responsive grid and some basic boilerplate styles that allowed me get off the ground quickly. Skeleton provided exactly that. So far its been pretty successful and I could see myself using Skeleton again.

Welcome

I’ve attempted to build my personal site a number of times over the last few years, but it never really got it off the ground. There are many reasons why and I’ll list a few here as I think some people can associate with them but also as a reminder to myself.

  • Busyness
    When I had spare time to work on websites, my own site always ended up at the bottom of the priority list, losing out to paid work. I’ve since learned that the stuff you play around with yourself makes your work better. Just because something doesn’t make money, doesn’t mean it’s not valuable.
  • Indecisiveness
    A good designer relishes constraints. Working on a personal project can be challenging because you determine those constraints. It feels like your chance to try out all those ideas you’ve ever had but never got to use. You’re unfettered by the opinions of clients or co-workers. I wanted to do everything so I ended up doing nothing.
  • Motivation
    This one is simple, when you can’t find the motivation to do something, it doesn’t get done. Early on my motivation was just “I should have a website”, which obviously wasn’t enough!

Over the last few months I’ve tried to focus on exactly what I wanted to get out of the site and plan the simplest path to getting there. It didn’t matter if the site was the prettiest or the most technically interesting if no-one could see it. I had to keep reminding myself to keep it simple.

Part of this refocus was my decision to include a blog and put it front and centre on the homepage. My hope is that it will help me catch and hold onto my thoughts. The process of writing for others allows thoughts to percolate, be distilled and refined, become clearer. Its also like the old adage that you know you understand something when you can teach it.

I have long been inspired, entertained and educated by writers like Marco Arment, John Syracusa, John Gruber, Frank Chimero, Dan Cederholm and many others. It’s through their words that I’ve seen the value of writing and sharing knowledge. I’ve always taken great pleasure in teaching and explaining things to people so I want to take that online.

So what can you expect to see here? Well, I definitely want to share my experience of working as a web designer. There’ll hopefully be some design and web related tips and tutorials, links to things I find interesting and maybe a few rants if you’re lucky.

Creative Mornings: Ugly

Yesterday morning I attended Creative Mornings Dublin and was treated to an absorbing talk by none other than comedian Tommy Tiernan. This was pretty special as usually the speakers at design/tech meetups would not be as well known as Mr. Tiernan. Creative Mornings is a breakfast lecture series aimed at the creative community. It started in New York and now has chapters in cities all over the world. The theme this month was “UGLY”.

Tommy had recently finished a European tour of entirely improvised sets. No written material. He had been listening to Keith Jarrett, a jazz pianist who performs full-length improvised concerts and wondered if you could do the same with stand-up. Tommy described what Jarrett’s performances were like. How he’d start playing, looking for a motif. When he got something that interested him he’d come at it from every direction, playing with it. He poke and prod it, explore it. Eventually the piece would come to a point of chaos where it seemed he had lost it. The music was jarring and wild, Jarrett physical and animated. Eventually he comes back to that original motif as things calm down. Tommy, discussing with a friend, said he thought Jarrett’s music was about losing the motif and trying to find it again. His friend responded saying he had it wrong, that Jarrett was trying to find the chaos.

Tommy’s main thesis was that we think things are beautiful because they adhere to a pattern we’re comfortable with, which I think is an astute observation. He said that ugliness contains real creativity because you can’t understand the pattern in it. Tommy’s own performance echoed this idea where like Jarrett he started exploring an idea, taking it down paths that sometimes came to a dead end. But he kept going, building to a crescendo of frenetic energy where, it seemed, he was most at home.

I left mulling over why we think some things are beautiful, the creativity in ugliness and how taking risks can lead you to being your most creative.

The Responsive OS

In the short time since Apple announced iOS 7 there has been a lot written about its radical new interface design which is a significant departure from the previous version. Gone are the shadows, textures and lighting effects. Rich ornamentation has been replaced by strong simple lines and areas filled with flat or vibrant gradient colours. Navigation and tool bars are now translucent white sheets that blur the content behind them. Whatever your thoughts on some of the controversial details (like some questionable icons), I'm sure many people will agree the new design feels modern, lightweight and fluid.

At Aertv we’re big fans of Responsive Web Design and that’s why I was excited by the iOS 7 redesign and why I think overall this is a very smart move by Apple. iOS is becoming a much more responsive OS.

The new design breaks away from an interface that tries to mimic real-life objects and surfaces and in doing so opens the door for new types of interactions. Just look at the new Calendar app. Its simple icon displays the current day and date, when you tap on it you are zoomed in seamlessly to the current day in the month view. Tapping on the day zooms you in again to see the detail for that day. The transitions are supporting your mental model of the hierarchy of years, months, days. Imagine how difficult those transitions would be if the calendar still looked like a sheet of metal covered in a grid of chiseled lines.

iOS now has a foundation that will make it much easier to develop new features and interactions. They will support how the user thinks about the content their interacting with, rather than being constrained to how real-world objects behave.

I see iOS 7 as the solution to the problem that responsive web design is trying to address. In recent years there has been an explosion in the number of new devices on the market giving software developers a massive range of screen sizes to contend with. Designing for each device or a particular resolution is untenable. With the simplification of the UI along with new features like OS level text-resizing and auto-layout frameworks, developing for multiple screen sizes is getting easier and faster. Once these kinds of capabilities have been made in the software it would make it much easier for Apple to introduce new iOS devices with different screen sizes. It’s now even more likely we will see a bigger (or smaller) iPhone.

One of the most interesting things about Apple is how relentless they are, unafraid to jettison legacy or outdated technology, to make way for something newer. I for one am looking forward to the possibilities this new OS will create.

Web Video Coming of Age

The proliferation of open source software has, without a doubt, contributed to accelerating software development in the last 10 years. Open source software has also helped to drive down the cost of running web services dramatically and made media delivery on the web not only cheaper but better.

Brightcove, an online video publishing company, recently announced the development of their next generation player. This new player will be based on the popular open source playerVideo.js, which was developed by Zencoder before they were acquired by Brightcove.

Like most publishing platforms Brightcove have a Flash-based player which falls back to an HTML5 player when Flash isn’t detected, such as on the iPhone or iPad. In their announcement they said the new player would be HTML5 by default and fallback to a Flash version where HTML5 isn’t supported. This is great news for users as not only will this remove the regular performance issues of Flash on desktops but also give mobile users a first-class video experience.

This new player will will be mobile-first, meaning it’s responsive by design, targeting the ever-increasing mobile audience first and scaling up seamlessly to larger screen experiences. The fact that the player is open source means that it will benefit from the weight a company like Brightcove can put behind it but also a sizeable developer community. Video.js is already being used on sites like Vine, Dropbox and The Onion.

Video really has become a first-class citizen of the web and open source development like this will only make the experience better for developers, businesses and the user.

Lost and Found

If you're one of those luck enough to own an iPhone could you imagine ever losing it? What would you do to get it back? Well it happened my wife Cathriona this weekend. After a fun night out in Rathmines celebrating a friend's birthday, it wasn't until after we left the bar we were in, that Cathriona realised she didn't have her phone.

Mobile phones nowadays are incredibly personal and increasingly more valuable. We've all had that moment when we realise something precious to us is suddenly missing. We started the search by trying to ring it but got nothing, straight to voicemail, the phone was off. We looked everywhere for it and even tried back at the bar, which had closed at this point. The staff member locking up hadn't seen it and suggested calling again in the morning after the cleaners had been in. Obviously not what we wanted to hear. Cathriona was pretty upset at this point, mainly because it wasn't just another phone but because I had just recently passed it on to her after I got my new one. We were enjoying sharing calendars, photos and playing Letterpress together.

At this point we still had no idea where it could be. I was pretty sure someone else had it, especially as the phone was turned off despite it still having plenty of battery left.

My next step was to fire up the Find My iPhone (FMiP) app and login to Cathriona's iCloud account. I wasn't expecting much as I knew the phone was off and FMiP required a network connection. Even though it couldn't locate the phone I was still able to put it in 'Lost Mode' which locked the phone and displayed a message on screen saying the phone was lost and a number I could be contacted at. Now we just had to wait and hope the phone was turned on again and got a network connection.

As soon as I woke up the next morning I checked my phone immediately. No missed calls and no texts. Next I went straight into FMiP. It couldn't find the phones current location but its whereabouts had been logged about an hour ago in a housing estate in Lucan, about 20 minutes drive from where we lived. Someone had obviously turned it on, saw the lost message and turned it off again. I left Cathriona sleeping and was on the road in a few minutes following my iPhone's sat-nav to the location. In the car I rehearsed in my head what I would say to people as I started knocking on doors. I needed to be calm and direct but also try to trigger some empathy as it was up to whoever had the phone as to whether I got it back or not.

When I got to the estate the map marker rested on the corner of two streets and likely meant it was one of two terraced houses. The first and mostly likely house had no-one home. The second house and their neighbours both had families with young kids in them, both of which were very nice and understanding but neither had been out clubbing the night before.

Just before I left I checked FMiP again to make sure I had got the right location but noticed the marker had moved and the connection was live! The phone was turned on and located about 15 minutes away somewhere in City West. I was on the road again and thought this time was going to be harder as the marker was off the road in the middle of a big empty area on the map. When I arrived I realised the reason for this.It had lead me to a new building development that obviously didn't have its roads on the map yet. One problem though. This wasn't a housing development, it was all apartment blocks.

My heart sank as I saw the large apartment block where the marker had pointed to. I pulled out FMiP to double check I had the right one but discovered the marker had moved again! This time it was just a few hundred meters down the road. I thought for a moment maybe someone was messing with me, maybe I'm going to be chasing this dot all day, all over the city. At least the marker was live, so I knew I was close.

This time I thought I'd have a better chance than searching an apartment block as the marker was again at a junction between two roads but this feeling didn't last long. The marker had brought me to City West Shopping Centre. Are you kidding me?

I parked and made my way to the entrance wondering how I would find it in a shopping centre of all places. As I continued to check the map just before I entered the shopping centre I noticed the marker had moved ever so slightly onto the road in front of the entrance. It was moving. I looked around at the cars and people moving passed me. It could be in one of these cars, with any person. I checked the map again. It was still moving but slowly. I had to be someone walking. I saw a few people moving in the same direction as the marker, a young mother with a buggy and just ahead of her, two young guys with shopping bags. I followed along behind them tapping refresh on the map and sure enough the marker was just a little ahead of me. One of these people had to have the phone. We got out to the main road, the young mother staying on my side and the two young men crossed the road. The marker crossed the road too. It was them, it had to be. My heart was pounding. This could be it. I had used an iPhone to track an iPhone, in a city of over 1 million people to two guys in the suburbs in about an hour. Surely this is some serious James Bond shit going on here.

I picked up the pace and followed closer behind the two guys. My next move would prove it. In FMiP I hit the "Play Sound" button. This button issues a command to the lost phone to start playing a high pitch alarm sound at full volume. All I needed to see was either one of them reach for their pocket. A few seconds after I hit the button I just about made out the high pitched sound myself. Both guys fumbled at their pockets.

I tapped one on the shoulder, introduced myself and watched the confusion spread across both their faces as I asked had they been in the bar in Rathmines the night before and did they know what that alarm sound was. The first one showed me the Android phone he had in his hand. The second one fumbled a bit more getting his phone out. It was an Android too but the sound was still going, coming from his other pocket. Finally he reached in and pulled out Cathriona's iPhone. Got it.

After a minute or two of an increasingly tense conversation where I requested my property be returned, the Gardai being mentioned and the guy refusing to return it. He claimed it was his because he had found it, I had to put the brakes on and calm everything down. I introduced myself again and explained the whole situation and made it clear all I cared about was getting the phone back and that would be the end of it. The guy paused and thought for a moment then made a phone call to “the person who found the phone” after which he took the phone out and put it in my hand saying nothing.

I smiled, shook his hand and thanked him telling him he did the right thing. Just before we went our own ways I handed him the €20 from my pocket. I said that doing the right thing should be rewarded and next time he'll do the right thing again.