Browse our archives by topic…
Azure
Integration Testing Azure Functions Part 5: Reqnroll in Build Pipeline
Integration testing Azure Functions with Reqnroll and C#. Part 5 covers running your Corvus.Testing specs in Azure DevOps and GitHub Actions pipelines.
Integration Testing Azure Functions Part 4: Reqnroll Configuration
Integration testing Azure Functions with Reqnroll and C#. Part 4 shows how to supply or override configuration values for the functions apps under test.
Integration Testing Azure Functions Part 3: Reqnroll hooks
Integration testing Azure Functions with Reqnroll and C#. Part 3 uses scenario and feature hooks to start functions apps and keep your BDD specs readable.
Integration Testing Azure Functions Part 2: Reqnroll step bindings
Integration testing Azure Functions with Reqnroll and C#. Part 2 uses Corvus.Testing step bindings to start and stop functions apps in your scenarios.
Integration Testing Azure Functions with Reqnroll Part 1: Introduction
Integration testing Azure Functions with Reqnroll and C#. Part 1 sets out the testing challenge and introduces the open-source Corvus.Testing library.
Adventures in Least Privilege: When an owner isn't an owner
A troubleshooting journey through Microsoft Entra ID that reveals the subtle but critical distinction between App Registration ownership and Service Principal ownership - and why it matters for least-privilege automation.
Writing structured data to SharePoint from Synapse Notebooks
Write data back to SharePoint from Synapse Notebooks using PySpark, the Microsoft Graph API, and Service Principal auth — Drive IDs, tokens, and upload patterns.
Reading structured data from SharePoint in Synapse Notebooks
This post describes an approach to copy files and data from SharePoint into Azure using Synapse Notebooks.
Reading structured data from SharePoint in Synapse Pipelines
This post describes an approach to copy files and data from SharePoint into Azure using Synapse Pipelines.
Synapse & Service Principal SharePoint Integration
The interactive notebook shared in this post defines the process of granting Service Principals (inc. Synapse managed identities) access to SharePoint sites.
How do Data Lakehouses Work? An Intro to Delta Lake
With new technologies - such as Delta Lake and other open table formats - there have been huge improvements the performance of Data Lakehouses. But what is Delta Lake and how does it work?
What is a Data Lakehouse?
What exactly is a Data Lakehouse? This blog gives a general introduction to their history, functionality, and what they might mean for you!
Carbon Optimised Data Pipelines: Next Steps
Extending carbon-optimised pipelines: choose between Azure regions at runtime, work around Wait activity limits, and adapt the pattern beyond the UK.
Carbon Optimised Data Pipelines: Pipeline Definition
A portable Data Factory, Synapse, or Fabric pipeline that calls the Carbon Intensity API and waits for the greenest scheduling window — no custom code.
Carbon Optimised Data Pipelines: Architecture Overview
Translating carbon-optimised scheduling into a modern data pipeline architecture for Microsoft Fabric, Azure Synapse and Azure Data Factory.
Carbon Optimised Data Pipelines: Introduction
Cloud data pipelines often have flexibility in when they run. Using the UK National Grid Carbon Intensity API, you can schedule them for the greenest window.
Intro to Microsoft Fabric
Microsoft Fabric unifies data & analytics, building on Azure Synapse Analytics for improved data-level interoperability. Explore its offerings & pros/cons.
Notebooks in Azure Synapse Analytics
Discover the use of Synapse Notebooks in Azure Synapse Analytics for data analysis, cleaning, visualization, and machine learning.
Using Cloud CI/CD in Zero Trust Environments
Performing certain deployment operations from a cloud-based CI/CD agent against resources that are only accessible via private networking are problematic. The often-cited solution is to use your own hosted agents that are also connected to the same private networks, however, this introduces additional costs and maintenance overhead. This post discusses an approach that combines the use of cloud-based CI/CD agents with 'just-in-time' allow-listing as an alternative to operating your own private agents.
Playwright C# SDK to automate 2FA authentication for AAD and MSA
Learn to configure AAD or MSA 2FA profiles for UI automation testing with Time-based One-Time Passwords.
Adventures in Dapr Ep 5: Debugging Containers with Visual Studio
Explore Dapr for cloud migration & use Visual Studio container tools to debug containerized services.
ASP.NET Core MVC authentication in Azure Container Apps
A short rundown of why you need the ForwardedHeadersMiddleware when using Azure Container Apps to host an ASP.NET Core MVC app requiring authentication
Bye bye Azure Functions, Hello Azure Container Apps: Conclusions
In the sixth and final post we draw our conclusions about migrating an application from Azure Functions to Azure Container Apps.
Adventures in Dapr: Episode 4 - Containerising with Visual Studio
Explore Dapr for cloud migration & simplify containerized dev inner-loop using Visual Studio with the Dapr Traffic Control sample application.
Azure Functions to Container Apps Part 5: Migrating test environment
The fifth in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Customizing Lake Databases in Azure Synapse Analytics
Explore Custom Objects in Lake Databases for user-friendly column names, calculated columns, and pre-defined queries in Azure Synapse Analytics.
Azure Functions to Container Apps Part 4: Authentication & CORS issues
The fourth post migrating an app from Azure Functions to Azure Container Apps we examine the challenges around authentication and CORS
What is a Lake Database in Azure Synapse Analytics?
Explore Lake Databases in Azure Synapse Analytics: analyze Dataverse data, share Spark tables, and design models with Database Templates.
Insight Discovery Part 6: Defining business requirements for data
Capture actionable insights through workshops, build a delivery backlog, and learn why cloud analytics success ultimately comes down to people, not technology.
Azure Functions to Container Apps Part 3: Build & first big problem
The third in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Insight Discovery Part 5: Delivering insights via data pipelines
Traditional bottom-up data modelling leads to platforms that are hard to evolve and don't meet business needs. Data pipelines let you deliver thin, focused slices of value from source to insight.
Insight Discovery (part 4) – Data projects should have a backlog
This series focuses on maximizing data projects' impact via an iterative, insight discovery process, and synergy with cloud platforms like Azure Synapse.
Azure Functions to Container Apps Part 2: Migrating to ASP.NET Core
The second in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Insight Discovery (part 3) – Defining Actionable Insights
Define actionable insights by starting with a specific action, then identifying the questions, evidence and feedback loops that turn data into business value.
Insight Discovery Part 2: data projects start by forgetting the data
Successful data projects start by forgetting about the data. Begin with business goals and the decisions that drive them, and let data follow the insight.
Insight Discovery (part 1) – why do data projects often fail?
Why traditional bottom-up data warehouse projects so often deliver compromised platforms — and how a top-down, action-oriented approach changes the outcome.
Bye bye Azure Functions, Hello Azure Container Apps: Introduction
The first in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Automating Excel in the Cloud with Office Scripts and Power Automate
Automate Excel tasks with Office Scripts & Power Automate. Get an overview and explore a practical example in this post.
Using Azure CLI Authentication within Local Containers
Fix broken dev loop with containerized apps on Azure CLI for Windows. Learn a workaround to avoid using outdated Azure CLI versions.
Sharing access to Shared Metadata Model objects in Synapse
Learn how to grant non-admin users access to Spark synchronized objects with SQL Serverless in Synapse Analytics using the Shared Metadata Model.
Adventures in Dapr: Episode 3 - Azure Storage Queues
If you're interested in the Distributed Application Runtime (Dapr) and how it can simplify migrating existing workloads to use cloud platform services, then this series might be for you. In this post, we continue modifying the excellent Dapr Traffic Control sample application by swapping the MQTT-based messaging with Azure Storage Queues. We will also look at how you can use the Dapr programming model as an alternative to cloud-provider SDKs.
Adventures in Dapr: Episode 2 - Azure Key Vault
Explore DAPR's role in migrating workloads to cloud services, focusing on integrating Azure Key Vault for secrets management.
How to Monetize APIs with Azure API Management
Explore monetizing APIs with our guide. We offer strategies, videos, and code via Azure API Management to fast-track your business model.
Testing Power BI Reports with the ExecuteQueries REST API
Explore DAX queries for scenario-based testing in Power BI reports to ensure data model validity, rule adherence, and security maintenance.
Why you should care about the Power BI ExecuteQueries API
Explore the benefits of Power BI's new ExecuteQueries REST API for developers in tooling, process, and integrations.
Adventures in Dapr: Episode 1 - Azure Service Bus
Explore Dapr for migrating workloads to cloud services. Learn to enable PaaS Pub-Sub with Azure Service Bus using the Dapr Traffic Control sample app.
Adventures in Dapr: Episode 0 - Introduction
Explore Dapr's role in simplifying cloud migration using Azure services, based on the Dapr Traffic Control sample app.
Flex Your DevSecOps Muscles With Bicep
Bicep provides a significant improvement in tooling for organisations seeking to deploy infrastructure as code on Microsoft Azure.
Managing schemas in Azure Synapse SQL Serverless
Explore Azure Synapse's SQL Serverless for on-demand data lake queries, its benefits, and challenges in managing schemas and maintaining data sync.
Deploy a Vue app to Azure Static Web Apps using Azure DevOps & YAML
Deploy a VueJS app on Azure Static Web Apps using a YAML-defined Azure DevOps pipeline with Microsoft's hosting solution for static web applications.
New LinkedIn Learning Course AZ-204: Developing Solutions for Azure
Carmel has recently released an exam tips course on preparing for the AZ-204 exam: Developing solutions for Microsoft Azure! The course gives an overview of the syllabus, some tips on what you'll need to know for each section, and some examples of common question types.
Azure Synapse SQL Serverless: connect Data Lake and Power BI
TL;DR - Using Azure Synapse SQL Serverless, you can query Azure Data Lake and populate Power BI reports across multiple workspaces.
How to test Azure Synapse notebooks
Explore data with Azure Synapse's interactive Spark notebooks, integrated with Pipelines & monitoring tools. Learn how to add tests for business rule validation.
Configuration in Azure Functions - What's in the box?
The first in a series on Azure Functions configuration — what IConfiguration, environment variables, and the runtime give you out of the box, with a sample.
How to trigger an Azure Synapse pipeline run from C#
Trigger an Azure Synapse pipeline run from C# code in an Azure Function using the Azure.Analytics.Synapse.Artifacts SDK — parameters, PipelineClient, auth.
How Azure Synapse unifies your development experience
Modern analytics requires a multi-faceted approach, which can cause integration headaches. Azure Synapse's Swiss army knife approach can remove a lot of friction.
How to use the Azure CLI to manage access to Synapse Studio
Assign roles in Synapse Studio for Azure Synapse Analytics devs using Azure CLI. Accessible by Owners/Contributors of the resource.
Does Azure Synapse Link redefine the meaning of full stack serverless?
Explore Azure Synapse Link for Cosmos DB's impact on 'full stack serverless', No-ETL, and pay-as-you-query analytics.
SQL Notebooks for Azure Synapse SQL Pools & SQL on demand
Wishing Azure Synapse Analytics had support for SQL notebooks? Fear not, it's easy to take advantage rich interactive notebooks for SQL Pools and SQL on Demand.
ArrayPool vs MemoryPool—minimizing allocations in AIS.NET
How we diagnosed unexpected allocations in AIS.NET, comparing ArrayPool<T> vs MemoryPool<T> to hit zero-allocation per-message GC targets in a .NET parsing library.
A simple invite user flow for AAD B2C (without custom policies)
Explore an alternative "invite user" flow for Azure AD B2C, simplifying authentication without custom policies in SaaS applications.
Deploy an Azure Synapse Analytics workspace using an ARM Template
Explore deploying Azure Synapse Analytics workspaces using ARM templates, a popular infrastructure deployment method for organizations.
Using Azure Key Vault for Encryption in C# - A Simple Tutorial
Learn to encrypt data in your app using C# and Azure SDK libraries, and secure keys with Azure Key Vault. Discover the easy setup process in this blog.
Prepare for Exam AZ-204: Developing Solutions for Microsoft Azure
Carmel recently passed the 'Az-204 - Developing Solutions for Microsoft Azure' exam. Here she shares how she went about preparing!
Azure Synapse Analytics: serverless replacing the data warehouse
Serverless data architectures enable leaner data insights and operations. How do you reap the rewards while avoiding the potential pitfalls?
Talking about Azure Synapse on Microsoft Mechanics!
I was recently invited on to Microsoft Mechanics to talk about the new on-demand SQL Serverless offering within Azure Synapse. If you have been following along with my previous blog posts you will know that we've been hard at work applying Azure Synapse against real customer workloads. In the video I take you through the service by solving a real-world IoT problem for one of our telco customers.
Benchmarking Azure Synapse SQL Serverless with Polyglot Notebooks
New Azure Synapse Analytics service offers SQL Serverless for on-demand data lake queries. We tested its potential as a Data Lake Analytics replacement.
Azure Synapse for C# Developers: 5 things you need to know
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.
Using multiple azure-cli credentials within automation
Discover a technique for setting up multiple, concurrent authenticated sessions using azure-cli in this post.
Does Azure Synapse Analytics spell the end for Azure Databricks?
Explore why Microsoft's new Spark offering in Azure Synapse Analytics is a game-changer for Azure Databricks investors.
5 Reasons why Azure Synapse Analytics should be on your roadmap
Explore 5 key reasons to choose Azure Synapse Analytics for your cloud data needs, based on years of experience in driving customer outcomes.
Why Power BI developers should care about the read/write XMLA endpoint
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.
How does Azure Key Vault help me secure my data?
Azure Key Vault safeguards encryption keys & secrets for secure data access. It offers isolated storage, AD integration, RBAC, and access policies.
Testing Power BI Reports using SpecFlow and .NET
Ensure Power BI report quality by connecting to tabular models, executing scenario-based specs, and validating data, business rules, and security.
Azure Oxford talk: combatting illegal fishing for under £10/month
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!
Testing Power BI Dataflows using SpecFlow and the Common Data Model
Ensure reliable insights with endjin's automated quality gates for validating Power BI Dataflows in complex solutions.
Azure Analysis Services - how to save money with automatic shutdown
Explore Azure Analysis Services for scalable analytics. Control costs via automation with Powershell & Azure DevOps in multi-environment setups.
Building a proximity detection pipeline
Endjin's blog post details their project with OceanMind, using a serverless architecture and machine learning to detect illegal fishing.
Azure Analysis Services: update calculated column expression from .NET
Learn how to update Azure Analysis Services model schemas in .NET apps using AMO SDK for user-driven analysis.
Wardley Maps: How OceanMind use Azure & AI to fight illegal fishing
Wardley Maps are a fantastic tool to help provide situational awareness, in order to help you make better decisions. We use Wardley Maps to help our customers think about the various benefits and trade-offs that can be made when migrating to the Cloud. In this blog post, Jess Panni demonstrates how we used Wardley Maps to plan the migration of OceanMind to Microsoft Azure, and how the maps highlighted where the core value of their platform was, and how PaaS and Serverless services offered the most value for money for the organisation.
Azure Analysis Services: Process an async model refresh from .NET
Learn to use Azure Analysis Services in custom apps via REST API in .NET for efficient async model refreshes.
Introducing Ais.Net - High-Performance Parsing in C#
Endjin's high-performance .NET AIS parser, built for OceanMind to track commercial ships — 2.6 million messages per second using ref structs and Span<T>.
Azure Analysis Services: How to execute a DAX query from .NET
Explore endless possibilities with dynamic DAX queries in C# for Azure Analysis Services integration in custom apps using the provided code samples.
British Science Week: inspiring the next generation of data scientists
The theme of this year's British Science Week (6 - 15 March 2020) is "Our Diverse Planet". We'll be getting involved by speaking to school children about the work we've been doing with Oxfordshire-based OceanMind (part of the Microsoft AI for Good programme) to help them combat illegal fishing, hopefully inspiring some of the next generation of data scientists!
How can I contribute to the Azure CNAB Quickstarts Library?
The Azure CNAB Quickstart Templates we've created are only half the story. Much of the work we've done over the last few months involved the authoring, contribution and DevOps pipelines required to support an open source project. The project is inspired by the original Azure Quickstart Templates - which over the last 5 years has grown to over 850 templates. In this post we're going to explain how you can author CNAB templates and contribute them.
Setting up Porter on Windows
Porter: a CNAB-based tool for building, managing, and installing app bundles. Learn to set up Porter on Windows with this guide.
Introducing the Azure CNAB Quickstarts Library
In partnership with Microsoft, we have released Azure CNAB Quickstarts Library on GitHub. CNAB (Cloud-Native Application Bundle) is a new specification designed for facilitating the packaging, installation, upgrading and uninstallation of cloud-native solutions in the cloud, on-premise or on the edge. We've created a number of quickstarts covering Apache Airflow, Azure Kubernetes Service, Ghost, Kubeflow, SQL Server Always On and Wordpress to help demonstrate the power of CNAB and Porter.
Exposing batch processing with Azure Durable Functions, APIM & AKS
Discover how Kubernetes, Azure Durable Functions, and Azure API Management transform legacy batch processing code into a RESTful API.
Azure Analysis Services: query all measures in a model from .NET
Explore .NET querying methods for integrating Azure Analysis Services beyond data querying into dynamic UIs and APIs.
Azure Analysis Services: How to open a connection from .NET
Learn to integrate Azure Analysis Services in apps by establishing server connections. Follow this guide with code samples for essential scenarios.
NDC London 2020 - My highlights
Ed attended NDC London 2020, along with many of his endjin colleagues. In this post he summarises and reflects upon his favourite sessions of the conference including; "OWASP Top Ten proactive controls" by Jim Manico, "There's an Impostor in this room!" by Angharad Edwards, "How to code music?" by Laura Silvanavičiūtė, "ML and the IoT: Living on the Edge" by Brandon Satrom, "Common API Security Pitfalls" by Philippe De Ryck, and "Combatting illegal fishing with Machine Learning and Azure - for less than £10 / month" by Jess Panni & Carmel Eve.
NDC London Day 3: personal projects to developer comedy
Along with several of my endjin colleagues, I attended NDC London in January this year - here's a run through of the sessions I attended on Day 3 and my thoughts. This final day was a mixed bag, taking in talks on drumming and AKKA.net, as well as something a bit more close to home - a session from endjin's own Jess Panni and Carmel Eve on our recent project for OceanMind.
NDC London Day 2: SPAs to high-performance .NET Core via Websockets
Along with several of my endjin colleagues, I attended NDC London in January this year - here's a run through of the sessions I attended on Day 2 and my thoughts. This day was UI heavy, with sessions on Vuejs and UI testing, but I also learned more about GraphQL and writing high performance C# code.
NDC London Day 1: dangerous AI, microservices, diagnostics and Blazor
A retrospective of my first day at NDC London 2020, taking in sessions on AI and Machine Learning, Capability Mapping, Micro Frontends, Diagnostics and Blazor.
Azure Analysis Services integration: .NET, REST APIs and PowerShell
Explore Azure Analysis Services in custom apps using SDKs, PowerShell cmdlets & REST APIs. Learn to choose the right framework in this guide.
Azure Analysis Services: 8 reasons to integrate in custom apps
Azure Analysis Services isn't just for Power BI dashboards. Here are eight reasons you might want to integrate it directly into a custom application.
AI for Good Hackathon
Endjin attended Microsoft's AI for Good hackathon at the IET in London, highlighting the potential of tech to amplify good deeds.
Building a secure data solution using Azure Data Lake Store (Gen2)
In this blog we discuss building a secure data solution using Azure Data Lake. Data Lake has many features which enable fine grained security and data separation. It is also built on Azure Storage which enables us to take advantage of all of those features and means that ADLS is still a cost effective storage option!This post runs through some of the great features of ADLS and runs through an example of how we build our solutions using this technology!
NDC London talk: combatting illegal fishing with ML and Azure
In January 2020, Carmel is speaking about creating high performance geospatial algorithms in C# which can detect suspicious vessel activity, which is used to help alert law enforcement to illegal fishing. The input data is fed from Azure Data Lake Storage Gen 2, and converted into data projections optimised for high-performance computation. This code is then hosted in Azure Functions for cheap, consumption based processing.
App Service VNet integration: 'NotImplemented / Access denied' fix
Are you configuring your Azure App Service to use a VNet? The regional VNet integration for an Azure App Service is a preview feature, and so comes with some quirks. One of the documented limitations of this preview feature is that "The feature is only available from newer App Service scale units that support PremiumV2 App Service plans." This has interesting implications as to how you need to deploy your App Service, otherwise you could end up with a rather perplexing pattern of errors. Read about how we came about this error, and how we ended up fixing it.
Comparing GitHub Actions and Azure Pipelines: High-level concepts
GitHub Actions is GitHub's new CI/CD platform. It is comparable with Azure Pipelines, which forms part of the Azure DevOps suite. In this post, Mike Larah looks at the similarities and differences in the high-level concepts and terminology between the two platforms.
Long Running Functions in Azure Data Factory
Explore Azure Durable Functions as an alternative to long-running operations, overcoming HTTP Triggers' 230s limit in Azure Load Balancer.
How Azure DevTestLabs is helping me climb Everest
Remote working allows us to work from anywhere we want. This brings a huge amount of flexibility in freedom, however we do need the help of a working laptop! When Carmel's laptop gave in just before a trip, she used Azure DevTestLabs to allow her to continue to work using a 10 year old Mac that probably couldn't wouldn't have been up to the task alone...
Running Azure Functions in Docker on a Raspberry Pi 4
Running an Azure Function in a Docker container on Raspberry Pi 4 with this step-by-step guide and ready-to-use code for your projects.
Secure Azure Function-to-Function authentication without credentials
Explore how to build secure solutions on Azure using Azure Functions and Managed Identities, eliminating the need for storing credentials.
How to use the AzureAD module in PowerShell Core
Explore using AzureAD with Az module in PowerShell Core, as Az may not fully replace AzureAD. Learn to utilize both for optimal functionality.
Create a Power BI workspace in Azure DevOps Pipeline with PowerShell
Automate Power BI workspaces creation & security using PowerShell & Azure DevOps pipelines in a wider DevOps strategy with Azure data platform services.
Using Databricks Notebooks to run an ETL process
Explore data analysis & ETL with Databricks Notebooks on Azure. Utilize Spark's unified analytics engine for big data & ML, and integrate with ADF pipelines.
Exploring Azure Data Factory - Mapping Data Flows
Mapping Data Flows are a relatively new feature of ADF. They allow you to visually build up complex data transformation sequences. This can aid in the streamlining of data manipulation and ETL processes, without the need to write any code! This post gives a brief introduction to the technology, and what this could enable!
Snowflake Connector for Azure Data Factory - Part 2
Integrate Snowflake into your Azure Data Factory pipelines using custom Azure Functions. Learn how to load data and run queries in our detailed step-by-step guide.
Snowflake Connector for Azure Data Factory - Part 1
Explore the lack of a native Azure Data Factory connector for Snowflake and discover alternatives for integration between these popular platforms.
Enforce resource tagging with Azure Policy
Explore Azure Policy for proper tagging on resources and enabling tag inheritance from parent resource groups.
Avoid deployment lock errors: run web & function apps from packages
Fix DLL locking errors in Azure Function deployment by using "deploy from package" option. This runs the function from a package file, resolving issues.
How to run a script on an existing Azure Virtual Machine
Using PowerShell and the VM Custom Script Extension to download and execute scripts on existing Azure VMs
Managing apps with Azure AD, service principals & managed identities
Explore Azure Active Directory's key concepts: AAD apps, service principles, managed identities, with setup examples.
Cosmos DB - Request Units charged for processing a Gremlin API request
If you're using the Gremlin API for Cosmos DB, you can now see how much each operation costs in Request Units.
Thoughts on .NET, Cloud, AI, ML and teaching software engineers
Ian Griffiths recently joined endjin as a Technical Fellow. We had a long fireside chat, which has been broken down into a 5 part series covering .NET, the Cloud, AI, ML, teaching software engineering, and why he joined endjin.
OpenAPI Document Converters for Visual Studio 2017
The OpenAPI SDK based OpenAPI document converters extension has been updated to support Visual Studio 2017.
How we set up daily Azure spending alerts and saved $10k
We set up daily Azure spending alerts with Azure Cost Management, catching cost spikes within 24 hours and saving over $10,000 versus monthly billing.
We're talking about Cosmos DB at Future Decoded 2017!
We have lots of experience working with Azure Cosmos DB, and we're sharing some of our knowledge at Microsoft's Future Decoded event.
Kickstart your API proposition with the API Maturity Assessment
Explore the importance of API strategy, governance, security, and design in Digital Transformation projects.
How to plan your cloud transformation journey
We've been helping customers adopt Microsoft Azure since 2010, we have produced a lot of thought leadership to help people think about the steps required, the risk involved and how to plan a successful adoption.
Best of the Recorded Azure Sessions at BUILD 2017
There were so many good sessions at Microsoft BUILD 2017, we selected our highlights of sessions that you should make time to catch up with.
Power BI DirectQuery report with multiple SQL DBs via Elastic Query
Learn to build a Power BI dashboard using DirectQuery and ElasticQuery across multiple databases with Alice Waddicor.
Benchmarking the Cloud against on-premise data centres
In the third and final part in this series we compare the risk of Azure vs the risk of on-premise data centres, using the Swiss Cheese Risk Model.
Azure ARM template patterns: t-shirt sizing and optional resources
Implement using parameters in Resource Manager templates for optional resource deployment and configuration.
Office security automation with Synology, OneDrive and Power Automate
Read about how we set up automated backups of our office security camera footage and used Power Automate to alert us if anything went wrong
AWS vs Azure vs Google Cloud Platform - Networking
Explore AWS, Azure, and Google Cloud Platform's offerings for cloud migration. Understand their services for your specific needs.
How to use Power BI Embedded with AspNetCore
Add a Power BI Embedded report to ASP.NET Core without an SDK: drop-in IHtmlHelper extensions, tips on PowerBI.js bundling, and the missing PowerBI.MVC.
AWS vs Azure vs Google Cloud Platform - Mobile Services
This post compares mobile services from AWS, Azure, and Google Cloud Platform, covering mobile backends, push notifications, analytics, authentication, and device testing capabilities across all three providers.
AWS vs Azure vs Google Cloud Platform - Internet of Things
This post compares the Internet of Things capabilities of AWS, Azure, and Google Cloud Platform, examining device communication, data ingestion, and real-time analytics features.
AWS vs Azure vs Google Cloud Platform - Analytics & Big Data
This post compares analytics and big data services across AWS, Azure, and Google Cloud Platform, covering data processing, machine learning, streaming analytics, and visualization offerings.
AWS vs Azure vs Google Cloud Platform - Database
This post compares database services across AWS, Azure, and Google Cloud Platform, including managed relational databases, NoSQL options, data warehouses, and caching solutions for cloud migrations.
AWS vs Azure vs Google Cloud Platform - Storage & Content Delivery
This post compares storage and content delivery services across AWS, Azure, and Google Cloud Platform, covering object storage, file shares, hybrid solutions, and CDN offerings.
AWS vs Azure vs Google Cloud Platform - Compute
This post compares compute services across AWS, Azure, and Google Cloud Platform, covering virtual machines, containers, PaaS offerings, and serverless options for different cloud migration strategies.
AWS vs Azure vs Google Cloud Platform
This post introduces a series comparing AWS, Azure, and Google Cloud Platform services across 10 categories, helping organizations choose the right cloud provider and migration strategy.
Cloud Adoption: A Deep Dive into the Swiss Cheese Model
In the second part of this series, we take a deep dive into the Swiss Cheese Model and show how this type of threat modelling is essential for understanding the risks that adopting Microsoft Azure post your organisation, and how you mitigate them.
Automating ALM environment creation with PowerShell and Azure DevOps
Did you know that you can fully automate the bootstrapping process of setting up an Azure DevOps enviornment? This post shows you how.
"But it works on my cloud!" Developer mistakes in DevOps and PaaS
In the world of DevOps, cloud and platform services, how does a developer's "definition of done" need to change? This post argues that as the silos of development and operations are broken down, the responsibility of understanding the whole solution increases meaning, to truly take advantage of the cloud, the need for quality and professionalism is critical for success.
Deploying to Azure with ARM templates and Octopus Deploy
Learn how to combine the power of Azure Resource Manager and Octopus Deploy for a frictionless Azure DevOps experience.
Cloud Adoption: Risks & Mitigations Analysis
In the first part of this series, we look at how you take a strategic look at the risks of adopting Microsoft Azure, and how you report these to C-level execs.
Using Postman to load test an Azure Machine Learning web service
Explore creating and testing an Azure ML Studio web service using Postman for efficient machine learning model production.
TeamCity MetaRunner: Release Annotations in Azure Application Insights
Meta-Runners allow you to easily create reusable build components for TeamCity, in this post I demonstrate how to create a Meta-Runner to create Azure Application Insights Release Annotations.
Automated R Deployments in Azure
This post explores how to automate the deployment of R models to Azure Machine Learning using reusable scripts that integrate with Azure DevOps and standard ALM processes.
Azure Automation: run VMs office hours only with graphical runbooks
We've improved our approach for saving money by turning off our virtual machines outside of office hours. This post explored how to do it using graphical runbooks.
Embracing Disruption - Financial Services and the Microsoft Cloud
We have produced an insightful booklet called "Embracing Disruption - Financial Services and the Microsoft Cloud" which examines the challenges and opportunities for the Financial Service Industry in the UK, through the lens of Microsoft Azure, Security, Privacy & Data Sovereignty, Data Ingestion, Transformation & Enrichment, Big Compute, Big Data, Insights & Visualisation, Infrastructure, Ops & Support, and the API Economy.
The 100 Year Start-up: Embracing Disruption in Financial Services
Hymans Robertson was set up in Glasgow in 1921 and is one of the longest established independent firms of consultants and actuaries in the UK. Hymans Robertson soon realised that the computational requirements of their models exceeded the capacity of their on-premise datacentres and that the most cost effective solution would be to use the cloud to perform their Big Compute. But before they could harness the cloud to help them solve their Big Data problems, the business needed to understand the ramifications of moving to the cloud; everything from regulatory, risk and compliance concerns, to how their internal Ops team would need to evolve and adapt, and how to deal with moving data from on-prem into the cloud.
Why is blockchain revolutionising Financial Services?
There is a lot of hype about the blockchain - usually wrapped up with talk about Bitcoin and crypto-currencies. In this article, we look at its impact on trust, and auditability in financial services, and why it may (or may not) be appropriate for your solutions.
Regulatory Compliance and Cloud Adoption
In this post we review the FCA's guidelines for the adoption of cloud services by FinTech businesses, and help you to understand their impact across the value chain.
FinTech Week and the Microsoft Cloud
To celebrate FinTech Week, we've released an eBook based our our talk about Disruption in Financial Services at Future Decoded.
Azure Resource Manager authentication from a PowerShell script
Learn how to authenticate against Azure Resource Manager using PowerShell, for fully automated deployments.
Azure Weekly turns 1: giving away 5 Windows IoT Raspberry Pi 2 kits
We've reached our first milestone - a whole year of publishing Azure Weekly. To celebrate we're giving away stuff!
Azure Batch - Time is Money in Big Compute
Consumption based pricing is a one of the USPs of Cloud PaaS services, but the default settings aren't necessarily optimised for cost. Significant savings can be made from understanding your workload.
Azure ML: experimenting with training data proportions with SMOTE
Azure Machine Learning's SMOTE module helps balance imbalanced training data by generating synthetic samples, improving model accuracy for multi-class classification.
Azure Resource Manager and PowerShell DSC to create & provision a VM
Explore Azure Resource Manager and PowerShell Desired State Configuration for provisioning and configuring Azure virtual machines.
Spinning up 16,000 A1 Virtual Machines on Azure Batch
We recently completed a technical proof of concept to see if the new Azure Batch service could scale to meet the demands of a Big Compute workload.
Azure data services part 3: Azure Machine Learning
Azure Machine Learning provides a drag-and-drop GUI for building predictive models, then publishes them as web service endpoints: no data science background required to get started.
Azure data services part 2: Stream Insight
Azure Stream Analytics ingests live data through Event Hubs and queries it with a time-aware SQL variant, making it ideal for real-time fraud detection, sensor monitoring, and clickstream analysis.
Azure data services part 1: HDInsight
Azure HDInsight brings Hadoop to the cloud, distributing big data processing across cluster nodes so you can analyse clickstream, financial, or IoT data without maintaining on-premise infrastructure.
SpecFlow Extensions for Azure Storage Emulator
We use SpecFlow to write integration tests against Azure. In this post we share an Open Source SpecFlow extension for the Azure Storage Emulator.
Speed kills: page load time, conversions and Azure CDN
A CDN, short for Content Delivery Network, is essentially a network of servers set-up, in various geographic locations, with the aim of speeding up the delivery of content to end-users across the Internet.
Azure Automation scheduler and daylight saving time
Everything in Azure runs in Coordinated Universal Time; learn how to deal with Daylight saving time in Azure Automation, so your jobs still run on time.
Visualise your Azure Table Storage data with Power BI
You don't need to be a data scientist to surface insights from Azure Table Storage. Connect Power BI directly, import the data, and start visualising trends.
Azure Web Apps: Package Restore against a private NuGet Feed
If you have private NuGet feeds, restoring packages during a CI/CD process can be a challenge. This post provides a solution when working with Azure App Service.
Different New Relic app name per environment in Azure Cloud Services
Just because you're using the cloud, doesn't mean you don't use traditional DTAP environments. But you do need to configure your cloud services to understand them.
Reporting errors to New Relic from an Azure Worker Role
In this post we demonstrate how to use New Relic to monitor an Azure Cloud Service Worker Role, step by step.
Choosing the right Azure technology: a step-by-step guide
To help guide the client through the selection process (and to act as an aide memoire when we come to try and remember why particular choices were made), we created a handy flow-chart to take you through the technology landscape, and suggest some recommended-practice solutions.
Generating and using a certificate to authorise Azure Automation
Explore how to use Azure Automation for running VMs during office hours. Learn to create runbooks for automated tasks at pre-defined times.
Diagnostic logging with Azure SDK 2.5
Learn how to use diagnostics in Azure Virtual Machines and Cloud Service Web or Worker Roles using the Azure SDK.
Using Azure Automation to run VMs during office hours only
Discover cloud computing's pay-as-you-use model and how turning off VMs outside office hours can save costs.
Elasticsearch gotchas and tips - part 2
We've delivered a number of Elasticsearch solutions on Azure. In this second post in the series, we share some useful tips.
Have you signed up for the Azure Weekly newsletter?
Azure Weekly is our FREE weekly newsletter containing a round up of all the news and interesting blog posts about the Azure ecosystem.
Azure Weekly Newsletter
Endjin has launched Azure Weekly: a free Sunday newsletter rounding up Microsoft Azure news, tips, how-tos, and resources from across the ecosystem.
Troubleshooting Twilio with New Relic
We created an an automated, telephony-based candidate interviewing system using .NET and Azure. We used New Relic and Twilio to simplify first line support. In this post we delve into some of the technical details.
Restrict access to Azure Websites by accept-listing
By utilising the IP and Domain Restrictions feature in IIS, it is possible to lock down your Azure Website to only allow access to IP addresses and domains that you have specified in a accept list. Learn how in this post.
Gotchas when installing an Elasticsearch cluster on Microsoft Azure
We've built a number of Elasticsearch clusters on Microsoft Azure. This blog post contains some of our top tips and gotchas.
Connecting to an Azure Virtual Machine with PowerShell Remoting
Azure VMs use a self-signed SSL certificate for PowerShell Remoting, which blocks connections by default. Exporting and trusting that certificate unlocks scriptable, Remote Desktop-free server management.
Azure Tip: Cannot connect to VM after changing Virtual Machine Size
Quick fix for 'remote desktop could not connect' after resizing an Azure Virtual Machine. Typically caused by a stale dynamic IP, with a one-step solution.
TeamCity and YouTrack: Office 365 for Email Notifications
Azure IaaS has no built-in SMTP relay, but Office 365 exposes a public one. Configuring TeamCity and YouTrack to use it takes just a dedicated email account and the right SMTP settings.
Downloading Windows Azure Subscription Files
If you use Azure Management Studio, you can quickly setup your connections by importing your publish settings...
Azure: updating Service Configuration while running in Emulator
A quick tip for updating your Azure cloud service configuration while running in the emulator
RavenDB in the Cloud
Some thoughts on RavenDB after using it to build a content-managed website.