Thargy.com

Blogs and articles by Craig Dean

Author Archive

A note on the news

Greta Thunberg

At some point, as business leaders, we have to stop looking towards tomorrow to fix the problems of our making. Procrastination is not the painless solution it promises. We have to be willing to make tough decisions today and follow through with them.

, , , , ,

To move on from ownership

Bea and Bo at work

I believe a focus on Stewardship over Ownership is a good thing, and though it’s not easy, putting Stewardship at the heart of business is a worthwhile mission.

, ,

Opening Doors

On 7 October 2019, I’ll be looking back over 14 years at Web Applications UK, and celebrating my last day as Chief Executive. When I joined the company all those years ago, it was as a Consultant, working just four days a week. Within 18 months, I was asked to take over as Managing Director […]

Understanding digital infrastructure in a digital age

If you ask the average business owner whether they have internet access, they are very likely to answer ‘yes’.  If you ask them if they have broadband, most, but not all will continue to answer confidentially in the affirmative.  If you ask them if they have ‘superfast broadband’ a look of confusion slowly spreads across […]

Controlling access to shared resources in an asynchronous world

In my last post I introduced the AsyncLock and AsyncDebouncedFunction.  AsyncLock is a fantastic way of asynchronously holding a ‘lock’ without actually blocking threads.  It is the natural go to class for resource synchronization, but there are alternatives (with caveats). In .Net 4.5 the ConcurrentExclusiveSchedulerPair was introduced, offering a powerful approach to concurrency control.  Using this […]

, , , , , , ,

Debouncing asynchronous operations

With the introduction of the async and await keywords, asynchronous programming has finally become achievable by any .Net developer.  Building on the TPL, async and await extend the C# language specification to make task based programming relatively straight forward, and is a huge step forward from APM. However, being able to write code that runs […]

, , , , , , , , ,

Memory Mapped File Performance

In my last post I introduced Memory Mapped Files, and discussed how you could mark them as sparse.  Today, I would like to talk a little about performance.  Using LINQPad (my favourite tool!), I created a rough and ready test script which can be downloaded at the end of the article. The idea was to […]

, , , , , , ,

Sparse Memory Mapped Files

Memory mapped files are a powerful addition to the .NET framework in version 4.0.  They’ve been a key part of the windows Operating System since Windows 95, but using them required a working knowledge of COM Interop, as they weren’t exposed directly through the framework.  It’s well worth reading up on them, especially if you’re […]

, , , , , , ,

Secret Diary of an Interviewer

We do a lot of interviews at Web Applications, especially with the launch of our Apprenticeship scheme.  Over the years I’ve seen the best and worst of what candidates bring to the table.  Unfortunately, there’s far more bad than good, and it’s so unnecessary. Every now and then I get invited to speak at conferences […]

… get in the queue.

OK, so yesterday I returned with a really simple piece of code that’s convenient when building stack frames. After stacks, the next easiest/most convenient structure has to be the queue.  No surprise then that .NET has a similarly generic Queue  class. It seems appropriate to give it the same treatment – public class Queue<T1, T2> […]

, , ,

Previous Posts