Endjin - Home

endjin blogs

Think Smarter

Developing U-SQL: Local Data Folder

by Jess Panni

Those of you dabbling around with/in Azure Data Lake and Visual Studio will be aware that it is possible to run U-SQL scripts locally on your development machine. This is useful when developing and debugging scripts against small sets of data since you do not incur the overhead of submitting and running jobs up on Azure. U-SQL can access […]

Category: Analytics

ILMerge Meta-Runner for TeamCity

by Howard van Rooijen

At the start of every year we do a spot of spring cleaning; we tidy up all of our core intellectual property, harvest any useful code that we’ve written in the previous year, then give it all a thoroughly good refactoring; to ensure that the code is self-referencing all the new patterns and concepts. This has […]


What is Azure Resource Manager? The infrastructure that makes up your application is often composed of various different components. For instance, you might simply be running a web site, but behind the scenes you have an Azure web site deployed, a Storage account for tables, blobs, and queues, a couple of VMs running a database […]


Endjin.Licensing now supports SHA256

by Howard van Rooijen

Last year we open sourced an extensible licensing framework we created for an Azure / .NET based content platform we’re developing. We’ve just pushed an update that supports SHA256 for signing the license XML document. As this is a breaking change we’ve bumped the version number of the NuGet package to 2.x. For more information […]

Category: Open Source

We’re on the cusp of a new age – the era of the “modern browser”. As older IE versions are effectively mothballed by Microsoft (bar a few holdouts in the UK public sector and elsewhere, because they weren’t able to get their act together with 2 years’ notice), I thought we’d take one final snapshot […]

Category: Culture

A year ago we launched Azure Weekly, a free weekly email newsletter that covers all aspects of the Azure ecosystem: Management & Automation (Azure Automation, Azure Scheduler, Key Vault, Docker, Azure Resource Manager and PowerShell to Application Insights and Operational Insights) Compute (Virtual Machines, Cloud Services, Azure Batch & RemoteApp) Networking (Virtual Networks, ExpressRoute, Traffic […]

Category: Cloud

Since .NET 4.0, the ConcurrentDictionary<TKey, TValue> collection type has been available as a way of ensuring thread-safe access to a collection of key/value pairs, using fine grained locking. The collection also has AddOrUpdate and GetOrAdd methods that accept delegate value factories, so that you can lazily load your values only when you need to initialize them. […]


My first month at endjin

by Jess Panni

So it has been one month since I joined endjin; time to draw breath and reflect on my journey so far. A little about me A year ago I was sat outside a sunny coffee shop in Perth, Western Australia. My family and I moved there from the UK 6 years earlier, and I had […]

Category: Culture 7 Comments

Azure Batch – Time is Money in Big Compute

by James Broome

Earlier in the year, endjin worked with the Azure Batch Product Team to run a series of experiments against the Azure Batch service using a framework we developed for performing scale, soak and performance tests. We’ve had conversations with a number of organisations over the last 5 years who have scaled their compute intensive workloads (SAS, […]


Chaos with a rhythm – controlling innovation

by Matthew Adams

Running a start-up or bootstrapping a new product within an established business can feel pretty chaotic. Ideas develop, explode, or fade into silence. You are pulled in different directions by investors (present and future), customers, regulators, your team, the competition. It seems that everything needs to be done yesterday, but nothing is ever finished. Our […]


Stop coding, start developing your product

by Matthew Adams

For the past two weeks, we’ve been running an innovation workshop for one of our clients; in this case it is a well-established business with a great brand who are looking to diversify their offering. They are taking the intrapreneurship approach – bootstrapping (almost) standalone start-ups supported by the parent corporate. We started with a […]


At endjin, we love using Gherkin, from “unit”-style tests, all the way through to Integration and User Acceptance testing. In the .NET world, we make use of SpecFlow which has great integration with Visual Studio. With Visual Studio 2015 and its new support for npm/grunt, setting up CucumberJS for gherkin-style testing of JavaScript is pretty […]


A short while ago, I was trying to classify some data using Azure Machine Learning, but the training data was very imbalanced. In the attempt to build a useful model from this data, I came across the Synthetic Minority Oversampling Technique (SMOTE), an approach to dealing with imbalanced training data. This blog describes what I […]


Endjin spend a lot of time working with start ups and businesses who are pivoting into new product areas. They are usually operating under fierce resource constraints, and this has an impact on the way in which they can approach their development program. We’ve evolved a principles-based approach to the new product development process which […]


Previously each component in Azure was deployed, managed, billed and monitored separately. Azure Resource Manager (ARM) is a new approach that allows you to declaratively state what a group of Azure infrastructure should look like as a template, then deploy that template in an idempotent way (i.e. you can run it multiple times and it […]


Spinning up 16,000 A1 Virtual Machines on Azure Batch

by Howard van Rooijen

Big Compute, like Big Data has a different meaning for every organisation; for Big Data this generally tends to be when data grows to a point where it can no longer be stored, queried, backed up, restored or processed easily on traditional database architectures. For Big Compute this tends to be when computation grows to […]


Azure data services part 3: Azure Machine Learning

by Alice Waddicor

In parts 1 and 2 of this mini-series, I wrote brief intros to HDInsight and Stream Insight, Azure’s offerings for big data analytics and real-time analytics. Next up, Azure Machine Learning. What it’s for: Azure Machine learning provides a GUI with drag and drop pre-built components for carrying out predictive analytics. You can also plug […]


Azure data services part 2: Stream Insight

by Alice Waddicor

This blog is part of a series where I’m writing up my notes from a training session on Azure’s data services. The previous post dealt with Azure’s Hadoop implementation, HDInsight. This week, I’m going to write about Stream Insight. What it’s for: Stream Insight is an Azure service for real-time event processing. Use cases for […]


Azure data services part 1: HDInsight

by Alice Waddicor

Last Autumn, Richard Kerslake and I were lucky enough to land in the warmth of Barcelona, for a Microsoft Analytics training event. The sessions gave an introduction to Azure’s HDInsight, Stream Analytics and Machine Learning services. I’m going to write up a quick summary of what I learned about each service, starting with HDInsight. What […]


The Problem If you use Git (and GitFlow) with Visual Studio (which seems like it is going to become a much more popular combination), I’m sure you are well aware of the pain that is the “merge conflict” you often encounter when trying to merge (or rebase) a branch. There are three file types that […]