David Boland

Latest Posts

The Tragedy of the Computer Commons

How modern software creates a tragedy of the commons with your system memory—slowing down your computer one app at a time.

Should I get a Computer Science Degree?

Recently I had a family friend ask if they should get a degree in computer science. I ended up sending him a write up of my thoughts, and figured they would be worth sharing.

Structured Data with React and Contentful

Recently in Contentful's Discord channel, a user posted asking for help on how to implement structured data on their site. I wanted to share a couple of ways to do that with Contentful.

How to implement a Linked List in C#

Link Lists are a collection of nodes connected in a linear ordering. In this post, we will cover the linked list data structure, along with its main properties and methods.

Avoid These Common Mistakes When A/B Testing in Optimizely

Learn how to avoid common A/B testing mistakes by focusing on data-driven hypotheses, single-variable tests, and high-impact areas. Unlock valuable insights to optimize your website performance.

Analyzing Tournament Chess Perfomance Factors

This is an excerpt from a paper I wrote that analyzes different player factors and their effects on online chess tournament performance. After tracking players across several online tournaments, we are able to use regression analysis to determine which have a greater effect on tournament results.

When to Use A/B Testing vs. Personalization in Optimizely

Is your website costing you customers? A bad user experience can scare visitors away, damage your brand, and sink your SEO ranking. Fortunately, Optimizely offers two data-driven tools to turn things around: A/B Testing and Personalization. Both help you optimize your website, but they work in different ways.

Process for Writing Technical Posts

Recently I did a Lunch & Learn presentation for my coworkers about I go about writing technical blog posts. It is a process I have come to enjoy, and wanted to share my writing workflow.

Understanding federated GraphQL

GraphQL federation is an API architecture that takes the best of both monolith APIs and microservices, providing a single endpoint for all your services.

Leveraging AI to Prep for Optimizely Certification Exams

That time has come where my Optimizely CMS and Commerce certifications are nearing expiration. That means its time to prep for the next round of exams. This time I wanted to try a new approach to prepping.

Elevate Your Digital Experience with Optimizely's New SaaS Core CMS

Discover the benefits of switching to a SaaS model with Optimizely’s newly launched SaaS Core CMS. From seamless maintenance to enhanced composability, explore how this transformative CMS platform can redefine the way you manage and deliver content. Whether you're considering going headless or looking for a robust yet easy-to-set-up CMS, delve into our insights from the latest Opticon reveal and see how SaaS Core compares to traditional PaaS solutions.

Development & the Law: Code Reuse

People don't usually associate development with the law, but I fell down a rabbit hole of legal issues that you may come across as a developer. I wanted to share what I found regarding the topic of code reuse.

Contentul AI Content Generator App

I tested out Contentful's new AI Content Generator App. After experimenting with all the features, I wanted to share my thoughts.

Can we do that in Contentful? Custom Apps

With the App Framework, you can add new functionality to Contentful, customize the user interface, and automate workflows to improve your content creation process.

Handling Redirects After a Contentful Migration

When a website changes its domain or URL structure, it is important to redirect the old URLs to the new ones. In this post, we will discuss the importance of redirects and options for handling them after a Contentful migration.

Content Modeling Best Practices in Contentful

To optimize your use of Contentful, it's important to follow best practices when creating your content models. In this blog post, we will explore five best practices that will help you create a well-structured and easy-to-manage content model in Contentful.

Organizing GraphQL Calls in Contentful Follow Up

This post is a follow up to a previous post about how to organize your GraphQL calls with fragments. The goal being to make a call to a Contentful multi reference field more concise.

Font Awesome Icon Picker for Episerver

A custom episerver widget might seem daunting, but it doesn't have to be. Build an icon picker property together with me and see how easy it is!

New Years Resolutions

2022 was a year of chess for me. I want to continue that into 2023, but in a more structured way. I figured the best way to start is with goals.

My History with Chess

A brief introduction to my history with chess, as well as a bit of a preview of where I hope to go with this blog.

The DXP Difference: Examples of Websites Built with Optimizely

Following the merger of Optimizely and Episerver, we’ve written about how Optimizely stacks up against its competitors, what it unveiled at its latest big customer event, and more. But the best argument for the impact that Optimizely can have on brands looking to deliver great customer experiences is looking at Optimizely-powered websites themselves.

Contentful Most Frequently Asked Questions

There are many general questions that get asked over and over regarding Contentful. Since they keep getting asked, I figure the answers aren't the easiest to find online. This post is an effort to get those answers out there.

How To Implement a Queue in C#

This post covers the queue data structure. We will go over what it is, when you should use it, its basic operations, and the implementation in C#.

How to Implement a Stack in C#

I wanted to give a quick overview of how to implement stacks in C#. I will give some general info about them, then get into the actual code. This is part of my series on data structures examples

Rendering Gatsby Images from Contentful Rich Text

Gatsby is great at rendering images. To do this, you need to leverage the Gatsby Image Plugin. For most of the images on the site, that is no problem. For images in Rich Text, it's not so simple.

Content Modeling Custom CTAs for Contentful Web Pages

Lots of Contentful website examples contain models for everything you would expect from a website. Standard pages, articles, authors, SEO, images, content blocks, etc. However, there is one subtle aspect that can get tricky, CTAs.

How We Built Multiple SPAs with On-page Editing using Episerver Headless

A client came to us needing a recommendation for a headless CMS to run multiple portal applications. With the requirement that we provide a headless option, and the knowledge that the editors love Episerver's features, it took us all of two seconds to come up with Episerver's Content Delivery API as a solution.

Organize Your GraphQL Calls with Fragments

In this post, I wanted to show how to clean up your GraphQL calls with fragments. This will make for a cleaner, more reusable code base.

Image Gallery Powered By Contentful

In this post, we will cover one of our favorite features in Contentful, the Images API. We will go over some of it's coolest features, and how we leveraged it to build a custom image gallery.

Content Modeling in Contentful

Content modeling can be a tricky thing. If done incorrectly, it can cause all kinds of headaches for editors. And trust me when I say going back to update the structure of your content after your project is live is worse. It's something you want to get right the first time. Check out this post for some instruction and content model examples.

Economics & Society - Part One

A review and summary of Paul Krugman's Economics & Society Masterclass. Covering the first few lessons on incentives and economic concepts.

Digital Signatures Archive

A repository of digital signatures for files shared online, hosted on Keybase Pages with PGP encryption to verify the source of documents.

Signing Your Work as a Developer

The concept of signing applies to more than messaging. Even more to encryption itself. I wanted to give some examples of how you could start signing your work as a developer.

Encrypted Contact Form in Vue

I have always been a big believer in digital privacy. I try to take extra steps to secure my personal data whenever necessary. I implemented a contact us form to allow users to encrypt their message they submit it on a site.

Machine learning with Episerver: Ascend 2019

For this year's Episerver Ascend conference, I gave a talk on machine learning. I wanted to share some info about the talk. I Cover Episerver Machine Learning tools like Perform, Profile Store, Reach, and Insights. Also Microsoft ML tools.

Build a simple PWA with Episerver: Ascend 2019

PWAs (Progressive Web Apps) help improve a site's Reliability, Speed, and Engagement. At this year's Episerver Ascend, we went into detail about all the benefits of PWAs. And we walked through some tools and techniques for integrating them into your site.

Learning Algorithmic Game Theory

Starting a journey to learn Algorithmic Game Theory, the crossover between Economics and Computer Science. Following Tim Roughgarden's lectures and documenting the learning process.

TinyMCE Templates Package

A NuGet package consisting of multiple TinyMCE templates for Episerver implementations. Provides default structure for rich text content with Bootstrap styling.

TinyMCE Templates Package In Episerver

Since my last post about Episerver TinyMCE default templates, I have worked on several projects that could benefit from them. I decided to create a NuGet package of some generic templates that I think most projects could benefit from.

Adding Episerver Content Type Icons in 2 minutes!

Have tons of Episerver content? Can't easily distinguish content types from eachother in the page tree? Here's how to leverage some episerver-provided icons that look great!

Using Cache Effectively on Episerver

Episerver website running slow? Memory usage too high? Long warmup times? Need to restart your site often? Here's the different types of cache and how to leverage them to speed up your website in Azure or on Episerver DXC.

Fast & Reliable Deployments on Episerver with Azure DevOps

Are you having issues with your Episerver website? Experiencing bugs, slow development cycles, long deployment interruptions? Here's how to improve the reliability and confidence in your Episerver website with automated deployments via Azure DevOps.

Creating CMS Editor Guides

At Nansen, creating editor documentation is part of our development process. I wanted to share how we implement our editor guides, and hoping to hear from others how they implement theirs.

Using Azure AD to Secure an Episerver Website

It's no secret that security is vital all websites. If you use Azure Active Directory to login to organization infrastructure already, why not use it to secure your website? Here's how:

Utilizing Episerver Commerce In a Mobile App

Episerver provides an amazing framework for transactional e-commerce websites, but that's not the only way you can use it. We created a mobile application for our client which allowed them to make in-person sales. Here is a bit about what we did and why.

Blog in Piranha CMS

A personal blog and project site built with Piranha CMS running on dotnet core, featuring RSS feeds, custom content types, and Progressive Web App capabilities.

Changing Episerver PropertyList Modal Size

In this post I will discuss how to change the size of the Episerver PropertyList modal in the editor view with CSS to improve the editor experience.

Create Episerver TinyMCE Default Templates

In this post, I will be describing how to add custom templates to your Episerver TinyMCE. Using templates can improve the content entry experience for your editors by minimizing the amount of editing that needs to be done.

Creating An Episerver Editor Documentation View

In this post, I will be describing how to add a custom editor view in Episerver that will be used to render documentation. Our example will be pulling the documentation from Github.

Pixzle iOS Application

A fun puzzle game that allows you to interact with photos in a whole new way. Send scrambled photo puzzles to friends and compete to solve them before the timer runs out.

Picwords iOS Application

An iPad application developed for individuals with disabilities, providing an Augmentative and Alternative Communication (PECS/AAC) system with customizable pictures and audio.