Interviewing Jack Franklin

Following our series of posts interviewing our Speakers, today we interview Jack Franklin — he’ll be talking about Elm, the amazing functional language that compiles down to JavaScript that’s been picking up so much momentum lately.

Jack is a Developer Evangelist at Pusher, based in London. He spends most of his time writing and talking about JavaScript and front end web development. He’s the author of “Beginning jQuery” (Apress, 2013) and is currently focusing on ECMAScript 6, React and the state of tooling for web developers. If not at a computer he’s usually found playing football or sat in the pub talking about code.

Seen anything great lately that inspired you?

Although I wasn’t at the actual event I really enjoyed James Kyle’s talk at EmberConf on compilers. I have a particular soft spot for libraries that not only provide useful functionality but also take pride in being a learning tool for developers. Babel’s usage has really grown rapidly in the last 12+ months and put the notion of a compiler in front of many developers who otherwise wouldn’t be familiar with one; having members of the core team work on educating developers along with improving Babel is really inspiring.

What is the last good book you’ve read?

Tech wise I’m working my way through Ilya Grigorik’s “High Performance Browser Networking” which is giving me a great refresher on some of the networking stack that I covered at Uni but have since forgotten, along with a tonne of useful information on how to keep the performance of websites high. I highly recommend it. I’ve already got my next book covered, having picked up a copy of “The Little Schemer” to improve my Lisp and functional programming skills.

Have you recently published a book yourself or are you preparing a workshop related to your talk that you’d like us to share with the audience?

Whilst I’ve yet to run an Elm workshop (in the future, I hope!) I have primarily been working on React workshops, running some in London, Scotland and Poland at various conferences. There’s a lot of parallels to be drawn between React and Elm apps, particularly when you throw Redux into the mix, and what I’ve really enjoyed is the way I find myself writing better React as a result of working with Elm. This is why I think anyone can benefit from doing a bit of work in Elm; even if you’re not going to write Elm full time the ideas can cross between frameworks and languages.

What’s the most exciting thing you’ve been working on lately?

At the moment I spend a lot of time building things for tutorials or blog posts; recently I’ve been working on a video series teaching Elm to complete beginners — it’s in the early stages at the moment but I’m hoping to end up producing a few videos that will be released in the future.

I’ve also been playing around for the first time with CouchDB and PouchDB which has been really great to work with — the automatic syncing that Pouch does is amazing!

Finally, I’m working on building a fully featured GitHub issues browser in Elm, primarily to be used as the example application for my talk in September. It’s interesting to see how Elm scales beyond the “Hello World” application and I’ve been experimenting with a few different ways of structuring apps as they grow.

What does Elm, being a language and kind of a framework as well, offer over more popular technologies like React or Angular? Would you bet on widespread adoption happening soon?

Elm’s an entirely different take on browser development. Most efforts these days are on building frameworks around JavaScript but Elm asks what if you could instead build a language that is designed from the off for larger applications in the browser? Whilst it can appear like a bit of a steep learning curve — Elm is very different to JavaScript — once familiarized with the basics it’s really nice to work with. In particular Elm’s type system catches many bugs before they’ve occurred — its compiler really gives you confidence in your code — and the concepts of reactivity and values that change over time are built directly into the language, which means a lot of the things other frameworks make you deal with are not an issue in Elm because it’s dealt with for you at the language level.

I would be willing to bet on Elm continuing to be adopted — we’re seeing more companies start to use it and the community is forming around the language — there’s no doubting Elm has a long way to go but it’s heading in very much the right direction and getting (deservedly) a lot of interest.

Does the near future satisfy your childhood expectation? How did you imagine it to be? (You may use animated GIFs for enhanced expressivity).

At this point I hoped to be a professional football player, but you can’t have everything I suppose! The main things I’m waiting for is for someone to finally properly solve the issue of paying in restaurants when there’s a big group of people (why is this still a problem!) and for people to not be so slow and silly when boarding airplanes — the pushing, shoving and rush to barge onto the plane really frustrates me! I fear though this is a human problem rather than a tech one, and hence it will never be solved…


Jack is speaking at Full Stack Fest 2016 in Barcelona: Super early bird tickets are currently on sale. Don’t miss out the chance to see him & the rest of our amazing speakers on stage!

Buy your ticket now!

Note that we also have a Call For Papers open. We provide paid travel & accommodation for all our speakers, regardless of the selection process. Submit your talk and get early feedback so you increase your chances to get selected!


Jack on stage at London’s React meetup

You can follow Jack Franklin on Twitter (@jack_franklin) and on GitHub