Behind the App: Interview with Elliott Kember

elliott

Elliott you describe yourself as being someone who makes complicated web apps. What would you consider to be complicated?

That’s a good question. It’s really a bit of a marketing line – most of my apps are actually very simple. I guess it really means that I build apps which can do some involved, and traditionally difficult things – but by using powerful tools, they’re easy to do. What used to take hundreds of lines of proprietary code, now takes a few elegant lines of re-usable code.

picture-16

Filetweet is an intuitive idea for twitter. What prompted the idea and what problems did you run across?

Well, I’d been dealing with files and attachments in applications, and I was trying to come up with an app which filled a specific gap. Sending files on Twitter has been done before, but not very elegantly – and only with Basic Auth, where you give someone your password. I thought I’d try and make a simpler one. It helps to imagine a tweet as a tiny email. You’ve got a sender and a recipient, and you’ve got content, but you don’t have attachments. Sometimes it’s useful to draw these kinds of silly parallels.

I came up with the idea and built it that night – it wasn’t too difficult. It uses S3 for storage, and the fantastic Twitter Auth plugin. Actually, just before I was about to launch, Twitter changed an API setting which broke quite a few Twitter OAuth apps. We all had to downgrade to an older version of the gem, which doesn’t break with Twitter, just to get things running again. It only took a couple of hours, but it sure was conspicuous timing.

Why did filetweet become something that you felt users on twitter needed?

People share files with each other all the time – by email, over IM, in web apps – I figured I’d just make the process one step easier. That’s the trick: if you can make an everyday activity easier for someone, you’re ahead.

picture-22

From your site I get the feeling you’re fun and relaxed. Why is this an attitude that helps you in your everyday tasks?

It’s good not to take yourself too seriously – at least from time to time. It lets you keep a healthy perspective on what you’re doing, and I guess it helps to makes you more approachable.

picture-32

What recent things have you had in the pipeline?

I’ve done a few apps recently: Spreadtweet, a Twitter client that looks like Excel, Blocky, a Twitter spam-blocking app, Whobuilt.it, which lets you claim the sites you build, FileShare HQ, an FTP file sharing app – it’s been a busy year!
None of them other than FileShare HQ actually make me any money, but I guess that’s how it goes. They were all a lot of fun and great publicity, and people seem to find them useful, which is very rewarding.

picture-52

If you had one mulligan (do-over) in your career what would it be?

Hmm, good question. I think I would’ve tried getting into Rails earlier – I remember looking at it when it was new, and thinking, “That’s a bit too tricky.” Turns out, there’s a lot to gain from difficult things.

What are the 5 most valuable apps you use on a daily basis?

Reddit, if that’s an app. Twitterriffic, Textmate, GMail, and Basecamp. Other than that, Safari. Oh, and Skitch. I also use Spreadtweet constantly, just so that when people ask me this question I can plug my own app.

carsonified

For Carsonified’s event booking system: what were some of the steps you had to take to make reliable app?

I liked the error reporting and 500 pages the best. On the very rare occasion that something went wrong, and the site served up an error page, the user was given about 5 ways to contact me directly. This turned out to be great, because I’d get an automatic notification that something went wrong, and I’d be half-way through fixing it by the time I got the user’s email. Sometimes, you send out a message to someone who’s having difficulty, and it’s the last thing they’re expecting. It’s hard to imagine a website being in touch with its developer in real-time, so it’s a welcome surprise when someone says “Hey, it looks like you’re having trouble booking – how can I help?” Error pages are inevitable. Unfortunately, if you do your job properly, you don’t get to do this very often.

We usually just avoid talking about error pages, but you have to deal with the realization that things do go wrong. It’s not always your fault – but you have to know what happened, and when, and most importantly WHO had the problem, so you can help them.

picture-15

What is with your affinity for pink?

Interestingly enough, pink was a masculine colour before World War 2 – and blue was feminine. It’s interesting to see how completely the roles have changed, and yet how immutable they seem now.

As for me, I guess it’s gotten to the stage where pink is so stereotyped in one direction that I felt it’d be nice and refreshing to try and roll with it. It’s always good to have a visual identity – so someone can say, “I recognize this style; I know who this is.” As with fashion, pink is pretty inoffensive these days – if you’re confident, I think you can pull it off.

picture-43

What are some great resources for new devs to draw upon to learn and grow themselves into better developers?

The internet, and your own spare time. There are far too many resources to name – everything is available 24/7, and everything is free – the only difference is your level of commitment. People are always asking me, “I’d like to get into development – where do I start?” I don’t actually bother answering any more, because these people never end up actually doing anything. If they were really interested, they’d already have started by themselves. It just takes time – spare time, weekends – in general, the more time you spend trying new things, the better you get. Asking for a shortcut before you’ve even started is just lazy.

Figure out who you really admire, and then just set yourself up to do what they’re doing. Chances are, they’ve spent a lot of time choosing a path. Once you’ve mastered that, then you can try and reinvent the wheel – but don’t start Day 1 by writing your own PHP framework, because you’re wasting your time.

If you do ask for someone’s advice, take them up on it. If someone suggests Rails, try Rails – there’s no law that says you can’t use more than one framework. People like to see their advice being taken seriously – if you spend time and effort giving someone advice, and then they don’t take it, why would you bother the next time?

Finally, once you’ve started, make sure that you can always look back at what you were doing 6 months ago and cringe. That means you’re improving!

Need More Elliott In Your Life?

Site | Twitter

 

If you liked this article, please help spread the news on the following sites:

  • Bump It
  • Blend It
  • Digg It
  • Bookmark on Delicious
  • Stumble It
  • Float This
  • Reddit This
  • Share on FriendFeed
  • Clip to Evernote