Endjin - Home


Did you know that Azure Synapse has great support for .NET and #csharp? Learning new languages is often a barrier to digital transformation, being able to use existing people, skills, tools and engineering disciplines can be a massive advantage.

Have you ever needed an automated process to use alternative credentials for a subset of tasks? This post will demonstrate a technique that allows you setup multiple, concurrent authenticated sessions when using the azure-cli and switch freely between them.

Have you or are you about to invest in Azure Databricks? If so, the new Spark offering in Azure Synapse Analytics is likely to have grabbed your attention and rightly so. Why is Microsoft putting yet another Spark offering on the table and what does it mean for you?

For years we have been building modern cloud data solutions on Azure and helping our customers transform their use of data to drive outcomes. Here are 5 reasons why Azure Synapse Analytics might just be the service that we have been crying out for.

C# 8.0 nullable references enable us to annotate our code with information that lets the compiler discover possible null-related bugs. The AllowNull attribute lets us get more expressive with properties and generics.

C# 8.0 nullable references enable us to annotate our code with information that lets the compiler discover possible null-related bugs.

Whilst “read/write XMLA endpoint” might seem like a technical mouthful, its addition to Power BI is a significant milestone in the strategy of bringing Power BI and Analysis Services closer together. As well as closing the gap between IT-managed workloads and self-service BI, it presents a number of new opportunities for Power BI developers in terms of tooling, process and integrations. This post highlights some of the key advantages of this new capability and what they mean for the Power BI developer.

Improve the already-great Windows Terminal experience by following these tips for customizing the application to work best for you.

C# 8.0’s nullable references feature dramatically changes a fundamental aspect of the language. In this post, Ian explains how to you can soften the impact by enabling gradually across your projects.

Despite being inherently difficult to test, the need to validate data modelling, business rules and security boundaries in Power BI reports is important, as well as the need for ensuring that quality doesn’t regress over time as the insights evolve. This post explains that, by connecting to the underlying tabular model, it is possible to execute scenario-based specifications to add quality gates and build confidence in Power BI reports, just as any other software project.

C# 8.0 nullable references: inferred (non-)nullness

by Ian Griffiths

C# 8.0 has two related but distinct notions of nullability. In this article, Ian explains why inferred nullness is a vitally important part of the language’s new Nullable References feature.

Jess and Carmel recently gave a talk at Azure Oxford on “Combatting illegal fishing with Machine Learning and Azure – for less than £10 / month). The recording of that talk is now available for viewing!

The talk focuses on the recent work we completed with OceanMind. They run through how to construct a cloud-first architecture based on serverless and data analytics technologies and explore the important principles and challenges in designing this kind of solution. Finally, we see how the architecture we designed through this process not only provides all the benefits of the cloud (reliability, scalability, security), but because of the pay-as-you-go compute model, has a compute cost that we could barely believe!

Whilst testing Power BI Dataflows isn’t something that many people think about, it’s critical that business rules and associated data preparation steps are validated to ensure the right insights are available to the right people across the organisation. Data insights are useless, even dangerous, if they can’t be trusted, so despite the lack of “official support” or recommended approaches from Microsoft, endjin treat Power BI solutions just as any other software project with respect to testing – building automated quality gates into the end to end development process. This post outlines an approach that endjin has used to test Power BI Dataflows to add quality gates and build confidence in large and complex Power BI solutions.

C# 8.0 nullable references offer benefits besides the obvious win of detecting null-related coding errors. This new language feature can also improve the expressiveness of your code.

Azure Analysis Services provides an enterprise-grade analytical platform with massive scale and flexibility. But, as one of the more expensive services in the Azure platform, consideration should be given to cost management, especially in multi-environment ALM scenarios. This post explains how to massively reduce running costs through automation using Powershell and orchestration tools like Azure DevOps.

Building a proximity detection pipeline

by Carmel Eve

At endjin, our approach focuses on using scientific experimental method to support the creation of fully proved and tested decision making, and the use of scientific research to support our work. This post runs through how we applied that process to creation a pipeline to detect vessel proximity.
This is an example which is based around the project we recently worked on with OceanMind. In this project we helped them to build a #serverless architecture which could detect vessel proximity in close to real time. The vessel proximity events we detected were then fed into machine learning algorithms in order to detect illegal fishing!
Carmel also runs through some of the actual calculations we used to detect proximity, how we used #data projections to efficiently process large quantitities of incoming data, and the use of #durablefunctions to orchestrate the processing.

Using complex objects in BDD Scenarios with SpecFlow

by Jonathan George

During our projects at endjin, we often find ourselves evangelising Behaviour Driven Development, and specifically SpecFlow. In this post we look at a technique for defining complex test data objects in your Gherkin feature files, which we’ve also made available via the endjin-sponsored Corvus.NET project.

C# 8.0 has an ambitious new feature, called nullable references. In this post, Ian explains why this makes a fundamental change to the default assumptions about nullability.

This post explains how to update Azure Analysis Services model schemas from inside custom .NET applications. Whilst not a common scenario for most, it shows that this is easy to do using the AMO SDK. So, there’s nothing stopping you from developing complex and rich end-user functionality over the top of your data analysis solutions – providing run-time, user-driven schema changes like “what if” analysis.

See how to manage consistent default configuration across all your .NET projects by using NuGet build assets.

1 2 3 14