Skip to content
Logo Theodo

Our recent articles


Load Previous Posts

Simple Design Patterns for a Lightweight Java API

James Haworth Wheatman9 min read

Java Logo Cover Image

TL;DR: in this article, I cover the design patterns I used in creating a lightweight Java API which processes an HTTP request (without using any external libraries). I show how you can use the Template Method Pattern to create a smart separation of concerns when implementing API endpoint routing. This is part two of a two part article - read part one to see how I parse the HTTP request and send a response!

Continue reading →

The rocky road to investigation: how useful can it be?

Alix Larroque10 min read

A cartoon drawing of a woman driving a red car filled with luggage. A dog wearing sunglasses on its head is in the backseat.

Developing a feature inevitably comes to writing the actual code that will integrate that feature, but preparing that development phase is just as important as actually typing the code on your keyboard. Figure a car trip going from Paris to…

Continue reading →

Learning through Generative Art : a Journey with Rust

Mickaël Gregot10 min read

A minimalist maze

This post explores the concept of Generative Art, presents a method for producing ideas for artworks, and demonstrates its practical application with the Rust programming language. Generative Art lets you create easy yet fun side projects to discover new things.What…

Continue reading →

SolidJS for beginners: a story of virtual DOM and signals

Elise RECEJAC7 min read

A cheatsheet of React vs Solid

Signals are everywhere. After some years of React domination where signals were put aside, they are now back! A lot of rising frameworks use it (like Preact or Qwik), and even Angular integrated it in version 16. I would like…

Continue reading →

Communicating with BLE devices with Expo mobile apps

Rohan Samuel10 min read

Person with a phone with blue waves coming out of it.

In this article, we will be understanding what BLE (Bluetooth Low Energy) is, the use cases for BLE, how the GATT profile defines how BLE devices communicate with each other, and using these concepts to build a React Native mobile…

Continue reading →

Speed up your Spring tests with Test Slices

Paul Royer5 min read

An exploded view of a red apple cut horizontally

Prevent reboots from slowing down your tests Navigating through the complex labyrinth of code testing is an inevitable adventure for developers. Many teams face a situation where they work a long time before hearing of key skills that would help them…

Continue reading →

The power of accessibility personas in web development: empathize with your users

Flora Soussand14 min read

Web accessibility holds immense importance to me. The reason why I chose to become a software engineer was the ability to construct products that would cater the needs and desires of the masses. I see web accessibility as a mean…

Continue reading →

Conquer the Search Realm: Unleashing Postgres' Full Text Search Potential!

Joshua Radin-GrantEvgenia Brusnitskaya6 min read

Sylius Next.js Commerce Headless

You’ve been working on your application for a while with Postgres and have realised that it would be great for users to be able to search key values in your database. Well, look no further! This article will introduce you to…

Continue reading →

3D in web: how to start?

Remi Peruto6 min read

3d circular mesh

Introduction What do the Avatar movie, a Rubik’s cube and car gear parts have in common? You were right: 3 dimensions (3D)! I majored in 3D modeling which is a topic I adore. This technology is broadly used: animation, video game, computer-aided-design,

Continue reading →

Boost Your Next.js Commerce with Sylius: Introducing Sylext

Charles DUVIGNEAU3 min read

Sylius Next.js Commerce Headless

If you are a PHP developer looking to create a fully customized e-commerce website, we recommend using Sylius as your e-commerce solution. With its modular and decoupled architecture, Sylius makes it effortless to integrate with third-party services and extend its…

Continue reading →
Load Next Posts