theScore Tech Blog

Things We Learn While Building the Ultimate, Personalized Mobile Sports Experience

Why we decided to change how the `details` element works

We thought we had a bug in our theScore Bet website, but it turns out that it was just a misunderstanding of how the HTML element <details> works. Let's dive into what we discovered.

6 min read
htmlreactaccessibility

Repo.transact/2 (The Case Against Ecto.Multi)

After reading Towards Maintainable Elixir by Saša Jurić and hearing about his infamous `Repo.transact` in some of his talks, I decided it was time to explore this for myself.

5 min read
elixirectotransactionmulti

Testing a Java-based Kubernetes Admission Webhook Locally

Setting up a local Kubernetes environment that integrates with a local Admission Webhook is an effective way mimic its behaviour in a live environment and allow easier testing to ease the overall development process of the webhook.

9 min read
kubernetesAdmissionWebhook

PostgreSQL Queries on JSONB Fields with Ecto

Ecto is a great library for making composable queries, but to query a JSONB field within a schema, it requires falling back to native PostgreSQL functions.

18 min read
elixirectopostgresql

Migrating PostgreSQL to Aurora with near Zero-Downtime

The goal here is to migrate an Amazon Web Services Relational Database Service PostgreSQL Database to Aurora with as little downtime as possible. The following documents the initial strategy that was considered using read replica promotion, followed by the end result using AWS's Database Migration Service.

21 min read
databaseaurorapostgresqlaws

Make the most of your Chat Channels

Persisted chat channels communication platform, which by its nature, has little guidance in how you organize channels. To ensure that everyone is making the most of channels, I'll provided some tips and suggestions based on my experiences.

7 min read
communicationlearningproductivity

Cut Code Review Noise on GitHub

Code reviews on GitHub can be noisy and contain a lot of unnecessary chatter. We explore how to effectively coordinate code reviewing a pull request using GitHub's reactions and request review features.

8 min read
githubcode reviewcollaboration

Keep on Learning, but don't Forget to Remember

As developers we are constantly learning tips, tricks and new ways to accomplish our work. We continue to accumulate these tips daily, but at the same time we potentially forget the less used but relevant ones. A system is presented that ensures that these tips are remembered.

3 min read
self-improvementshell

Using State Machines to Handle Workflows

In this post we will discover how state machines can be used to handle workflows in a Swift iOS application.

6 min read
iOSSwiftUIKit

UITableView & UICollectionView: Killing stringly typed cells with Swift

In this post we explore how to use make use of the Swift type system to get rid of strings when working with UITableView and UICollectionView.

12 min read
iOSSwiftUIKit

Older ›