pusherblog

Realtime Elm Revisited with Elm 0.17

A few months ago on the Pusher blog I wrote about Making Elm Realtime by using Elm’s port system to integrate an Elm application with messages from PusherJS. When I published that post, the latest Elm version was 0.16 and integrating with Pusher wasn’t as easy as I would have liked it to be. In May Elm 0.17 was released, and one of the biggest changes was the removal of Signal from Elm, and replacing it with Commands and Subscriptions. We suddenly lost one of the most complex features of Elm, and they were replaced with a system that’s...

pusherblog

Talking Universal JavaScript at Fluent Conf

Back in March I had the pleasure of flying out to San Francisco to speak at Fluent Conf, a yearly event organised by O’Reilly focused on front-end development, to speak about Universal JavaScript. You can find the video below, along with links to the slides and extra information. By writing our applications in this universal style we can improve the performance of our JS applications along with proving an experience for those who might not have JS enabled for whatever reason. There’s some links below to other resources that you might be...

pusherblog

Talking left-pad, NPM and dependencies in front-end development

Last week a module called left-pad, just 11 lines of JavaScript long, broke the internet. The module — relied on by the likes of Babel, React and other popular libraries — was removed from npm (the package manager for NodeJS) and suddenly everything stopped working as it should. Unsurprisingly developers around the world began to panic. In fact the problem became so widespread npm were forced to republish the module, getting it back online and fixing web development as we know it. The npm team wrote an in depth explanation of the whole...

pusherblog

Hack24 in Nottingham

A couple of weeks ago Vivan and I packed our bags to head to Nottingham for Hack24, a weekend hackathon held by Tech Nottingham. We were looking forward to seeing what inventive uses of Pusher a crowd of 100+ hackers could come up with in a short space of time. Hack24 was held in the incredible Nottingham Council House (Cronofy have some great pictures of the venue in their blog post on the event) which provided a picturesque setting for all to relax and work on their hacks. The Pusher Prize The winners of the Sphero Ollies were Big Crane who...

pusherblog

Fluent Conference, San Francisco 2016

Last week I travelled to San Francisco for Fluent Conf, a front end web development conference held every year by O’Reilly. It was fantastic to experience this event for the first time and meet many new and interesting people to chat with. Universal JavaScript I was fortunate enough to be talking on Universal JavaScript (you can find my slides on SpeakerDeck, in which I present my ideas and notes around building JavaScript applications that run not only in the browser, but on the server too. This includes its own challenges – most...

pusherblog

Making Elm Lang Realtime with PusherJS

We’re big fans of Elm Lang at Pusher, a functional reactive language that compiles to JavaScript. We recently attended an Elm hacknight in London and ever since we’ve been thinking about how to integrate Pusher into an Elm application. Longer term we’d love to build a native Elm library for Pusher but in the mean time you can successfully integrate by using PusherJS and Elm’s interopability with ports together. We’ve put our proof of concept onto GitHub if you’re keen to check the code out locally and play around with it. Remember...

pusherblog

Adventures in Elm Lang

Last week Will and I headed to the West London Hack Night meetup group for a specially organised Elm Lang hack, with Elm’s creator, Evan Czaplicki. Having both played a small amount with Elm we were keen to meet Evan and other Elm developers to see what they thought about the language. Elm is a typed, functional language that’s aimed at JavaScript developers wishing for a little more structure and safety in their applications. It boasts an intelligent compiler that is great at catching errors, a debugger that lets you go back in time and a...

24ways

JavaScript Modules the ES6 Way

Jack Franklin introduces ECMAScript 6’s module system with some tools to help us start using this powerful new JavaScript functionality of tomorrow right now. Always good to be ahead of the game – sorted out your Christmas shopping yet? JavaScript admittedly has plenty of flaws, but one of the largest and most prominent is the lack of a module system: a way to split up your application into a series of smaller files that can depend on each other to function correctly. This is something nearly all other languages come with out of the box,...