Building a JS Interpreter in Rust – Part 2

Posted January 2, 2019

Environment Setup

Before we start looking at Rust code, lets go through our dev environment. I use Visual Studio Code with the Rust (RLS) plugin. This plugin is fantastic, and covers pretty much everything you need Rust wise, the Rust Language Server sets itself up mostly, but its worth checking out the Github page and following the steps.

If Sublime is more your thing, check out the Rust Enhanced plugin for Sublime Text 3. It has virtually the same functionality, and with a bit of extra setup you can get the Rust Language Server running too.

I also use Rustup, Rustup is great for managing your Rust version, switching to nightly/stable or adding some additional toolchains.

Chromium adds initiator blackboxing

Posted January 23, 2018

I don’t know about you, but I’ve been in situations where modules or random scripts get loaded into the page and i’m not sure what brought them in.

My first step is to open up Dev Tools and check the networks panel, then look at the initiator column. If you haven’t seen this column before it’s a great way to see what the dependencies are for scripts, or what originally initiated the download of an asset such as a CSS or JS file. You can find more out about the initiator column here.

When should you show paddles within a carousel?

Posted January 21, 2018

Paddles on carousels and when to display them have always been an ongoing topic within the BBC.
There are various approaches which may work for some users but not others, and I’d like to propose a solution which often works well for us.

But first.. An example.
Below is the 6 Music homepage, we keep the paddles on below the scroll bar and visible at every breakpoint.

Rust Enhanced reaches 50k downloads

Posted January 13, 2018

In case you didn’t know there is an official Rust Package for Sublime Text 3. Its called Rust Enhanced, and we’ve had a great year in 2017. During September – October Rust Enhanced made it into the top 15 trending Sublime Packages on package control, and received over 50k downloads, so this calls for some celebration!.

Radio Explorer – What we’ve learned

Building the Responsive Radio Nav (Using BDD)

Posted March 26, 2015The aim was to have a more up to date navigation bar which is fully responsive across all platforms. We took the Behaviour Driven Development (BDD) approach which involved us writing tests & defining the behaviour of our nav first. Before doing that we needed to come up with a way this nav would work.
Read more

Hi, im Jason Williams, I live in London UK, and am a Principal Software Engineer at the BBC.