Code Live : LFW Twitter Wall

Shaun D
Fear and Coding
Published in
4 min readDec 6, 2014

I’ve been tasked with building a twitter wall for London Fashion Week. This is to only pull pictures in and I thought it’d be fun to sort of blog my thought process. I’ve got until Next week to do it, but I want to get something up and running by tomorrow.

4th Sept : 12pm

I started with the Node Hackathon Starter . I’ve had it in the back of my head for when I needed to do something reasonably fast — now seems to be the best time to break it out and give it a try.

Gotta think of a name….A wall.

Jericho.

I clone it down — remove the .git file and run a fresh git-init in the repo. Added my bitbucket repo as remote. Added all the initial files, commit, push.

I go through the starter kit code and see what it has to offer me — a lot. There’s potential to use FourSquare and maybe also Instagram — but getting pictures from twitter is the main focus.

I’ve got some information on the screen size and screen resolution that the wall will be on.

LED Screen actual resolution is 512pixels by 320pixels. We feed this though a video matrix that takes a 1080 signal and down samples, scales/crops to 512 x 320

Screen Size 4.48m Wide by 2.8m Tall

Pixel Pitch is 8.75mm

Okies. Im not going to worry about that right now — after some quick calculations — it’s a 16:10 aspect ratio I think. Front end doesn’t matter too much right now.

2pm

Post meetings, post lunch. I get cracking back on with the boilerplate, start taking a few things out that I know I definitely don’t need, other bits that I probably don’t need can wait until I’ve got this working. It already comes equipped and ready with the Twit node module, so I create a new route, a new controller and get those working.

Cool, that works, I can display some tweets with a search attached.

Time to look at the Twit module and see if I can get streaming working.

3pm

I’ve had a look through the docs of the Twit module and can definitely get the stream working. I’ve got to jump in a meeting in a bit though.

5:30pm

After a meeting and helping out some other people with some bits I finally get the chance to sit down and have another look at this fetching the twitter Stream.

All good. Now I have an event that happens when a new tweet comes in that matches. At the moment it’s just showing in the log, but it’s working.

Now, time to head home, I can think about it more there.

00:00am

Glitch Mob goes on, and time to figure out the best way to do this.

Im thinking about using Socket.IO?? Maybe push all the tweets into a buffer and then when I have enough (it’s a waste of a call maybe to shoot 1 at a time down the pipe) I can pipe them through Socket.io and add them to the DOM??

01:00am

Socket.io seems to be working as expected. Now on to getting it to render — will probably need to get some help from a lib here. Ember? React maybe?

2:00am

I was going to be brave and do it with React — but after a quick re-fuel and fiddling with Socket.io, I settled on potentially doing the front end rendering with Angular.

Have I ever mentioned how much I dislike Jade templates?

Ronald Jenkees is on to get me through getting Angular set up.

5th Sept : 10:50am

At some point last night I fell asleep. Woke up pretty late and had to get to work. Got in, did a few things and back to this. Last night I left it at writing the html (or jade) for displaying the tweets.

12:36pm

Can’t get this bloody socket.io thing working now.

4:00pm

Asked to stop working on the project….

Update : 6th December 2014

Our version of the twitter wall never went further than this. I don’t know the reasons why. Its always a shame to never actually finish something that you really want to, but I found this in my ‘Drafts’ and thought that it was something worth publishing.

For those of you who are working in agencies or who want to work for them, I hope this gives you something, even if that something is a word of warning. Sometimes you will be asked to do things at short notice and sometimes you will want to do them bad enough that you will work the hours necessary only for the opportunity to disintegrate pretty quickly. You won’t always get to finish everything and that is just one of those things you have to live with.

--

--

Shaun D
Fear and Coding

💻 Freelance creative tech. 🚀 Rocket Man.🥋BJJ White Belt Noob.