Scott Logic Ltd

Jonathan Cardy

Scott Logic Pool Competition

Jonathan Cardy, August 4th, 2011

Simon & Ian Tense semi-final as spectators look on, enthralled The inaugural Scott Logic pool competition took place last night, kicking off with 12 brave entrants comprising 6 developers, 5 new graduates and our intern Dean.  It was a marathon session in a league format; a total of 66 games played across 4 tables in 3 [...]

Read More


JavaScript Anonymous Functions

Jonathan Cardy, June 10th, 2011

Some of the pro’s and con’s of using anonymous functions in JavaScript.

Read More


Undocumented changes to jQuery “andSelf”

Jonathan Cardy, June 2nd, 2011

OK, this is a little behind the times since I’m talking about jQuery 1.3.2 – but it may be useful to someone. Today I was working on a project which had some time ago been upgraded from jQuery 1.3.2 to the latest version, and shortly after, a bug was raised. This bug was caused by [...]

Read More


Converting between jQuery Deferred and Rx Observable

Jonathan Cardy, May 10th, 2011

In this post I take a look at the similarities between jQuery Deferred and Microsoft Reactive Extensions, with a guide to conversion between the two. For those who have no prior knowledge of the two technologies, I’ll give a quick introduction.

Read More


CodeProject article on JavaScript strangeness

Jonathan Cardy, April 18th, 2011

At the weekend I published a CodeProject article titled “A Collection of JavaScript Gotchas”.  The target audience is JavaScript developers and also any other developer who might have an interest in JavaScript.   I think it covers pretty much all of the wacky features that give JavaScript a bad name.

Read More


Web Workers Part 4: Wrapping it Up

Jonathan Cardy, February 25th, 2011

Update: I have summarised this series of blog posts in a CodeProject article, available here. In this series of posts I showed a sweet way to use Web Workers to improve performance on browsers that support them, without impacting performance on browsers that don’t, by using jQuery 1.5 Deferred objects to wrap a “generic” worker. [...]

Read More


Web Workers Part 3: Creating a Generic Worker

Jonathan Cardy, February 24th, 2011

In the previous post we set up a Web Worker helper function that allowed us to create a worker file, and call it using code like this: $.work({file: ‘primes.js’, args: { from: 1, to: 100000 }}).then(function(data) { //Worker completed successfully console.log(data); }); Now, wouldn’t it be nice if you didn’t even have to write the [...]

Read More


Web Workers Part 2: Using jQuery Deferred

Jonathan Cardy, February 18th, 2011

The .NET Task Parallel Library is a great advance in parallel programming for the .NET framework. It lets us easily run an anonymous method in another thread without any worries about the actual thread creation. A Task object wraps up a piece of parallel code, and provides a notification of when it’s complete. We can [...]

Read More


Web Workers Part 1: Performance

Jonathan Cardy, February 18th, 2011

The Web Workers API is currently a draft HTML5 specification which defines an API for running JavaScript in a background thread. In this series of blog posts I am going to investigate the practical use of Web Workers. In this first blog post I want to look at the performance of HTML 5 Web Workers [...]

Read More


Introduction to Parallelism in .NET 4.0

Jonathan Cardy, November 16th, 2010

Back in the day, processors had a single core and clock speeds increased steadily every year.  This meant that although writing multi-threaded code for a single CPU gave some performance improvements (since single-core CPUs usually try to execute multiple threads), it was hardly the top of any developer’s list of priorities.  In the last few [...]

Read More

© 2013 Scott Logic Ltd. All Rights Reserved.