The Curious Engineer

All blogs / Software / engineering practice

Monadical Consulting

monadical.com

Monadical is a full-stack software development consultancy. We specialize in full-stack web development and custom software solutions.

Software / engineering practiceAI / MLJavaScript / TypeScriptPython

Posts
95 from 18 Feb 2016 to 29 Mar 2025
Posting
now and then
Kind
company blog

2025 3

  1. ARTICLE The Scraping-With-Cookies Dilemma The internet archiving and scraping industries have a growing problem. We don't know how to handle cookies READ MORE →
  2. ARTICLE Conversations are the New Oil Strategic considerations for protecting communication assets through systematic safeguards. READ MORE →
  3. ARTICLE Mindfulness in Typescript code branching. Exhaustiveness, pattern matching, and side effects 1/2: “Exhaustive absurd”, Or how to if/else READ MORE →

2024 10

  1. ARTICLE Don't Give Big Tech Your Papaya A strategic guide on how to avoid becoming beholden to big tech while still reaping the benefits READ MORE →
  2. ARTICLE Mastering Project Estimation Strategies for developing a framework around accurate project timeline estimations. READ MORE →
  3. ARTICLE So you want to build a social network? Here's what I've discovered about how online communities build trust or don't. READ MORE →
  4. ARTICLE Typescript Validators Jamboree A Fair(ly cruel) Review of Typescript Validation Libraries READ MORE →
  5. ARTICLE Revolutionize Animation: Build a Digital Human with Large Language Models A Step-by-Step Guide to Creating Your Next AI-Powered Avatar READ MORE →
  6. ARTICLE The Essential Guide to Ray.io's Anatomy A Journey Through Ray's Capabilities in GPU Management and Scalable AI Development READ MORE →
  7. ARTICLE Reflector: Elevate Communication with Our Real-Time Translation Tool Explore Monadical's Open-Source Solution for Online Meetings. READ MORE →
  8. ARTICLE Building a Ticketing System with Solana Mobile and Metaplex Foundation Umi Learn how to create an NFT-based application on the Solana blockchain. READ MORE →
  9. ARTICLE Kraken the Code: How to Build a Talking Avatar Create your own conversational avatar with Azure Cognitive, LangChain, and OpenAI. READ MORE →
  10. ARTICLE The AI Evolution: Transforming Zulip Bots, Part 3 Discover how AI reshapes chat automation in Zulip bots READ MORE →

2023 13

  1. ARTICLE How to Make LLMs Speak Your Language A Review of the Top Tools for Generating Structured Output. READ MORE →
  2. ARTICLE Property-Based Testing for Temporal Graph Storage A motley of functional techniques to allow isomorphic and deterministic graph generation. READ MORE →
  3. ARTICLE From Chaos to Cohesion: Architecting Your Own Monorepo Build a simple monorepo using GitHub Actions as a CI/CD tool. READ MORE →
  4. ARTICLE Beauty Really Is Skin-Deep? Introducing the Minecraft Skins Generator. READ MORE →
  5. ARTICLE Morpheus: A Dream Machine for AI Art Generation Giving you the power to create stunning and beautiful generative art. READ MORE →
  6. ARTICLE Integrating AI Models into Zulip Chatbots Using FastAPI: Part 2 Learn how to use N-tier architecture and FastAPI to build a scalable Zulip bot that can retrieve messages, links, and images from Zulip streams and topics. READ MORE →
  7. ARTICLE Digging Deeper Into Minecraft Skin Generation Learn how to generate custom Minecraft skins from text prompts using a Stable Diffusion model. READ MORE →
  8. ARTICLE Digging into Stable Diffusion-Generated Minecraft Skins Fine-tune a Stable Diffusion model on a Minecraft dataset and create custom Minecraft-style characters using text prompts. READ MORE →
  9. ARTICLE Demystifying Databases: Cracking the Code of Efficient Data Storage Unlock the power of data with comprehensive insights and practical guidance on selecting the ideal database for your projects, from relational databases to cutting-edge blockchain technologies. READ MORE →
  10. ARTICLE To Fine-Tune or Not Fine-Tune: Large Language Models for AI-Driven Business Transformation Discover the transformative power of LLMs for your business in our comprehensive roadmap, from their origins to the training processes, safety considerations, and current trends. READ MORE →
  11. ARTICLE 50 Shades of Rust, or emerging Rust GUIs in a WASM world An overview of Rust GUI libraries and frameworks, focused on WASM. Discover the latest GUI toolkit options for Rust, increase your programming skills, and create efficient WebAssembly bundles that will help you build comprehensive appl
  12. ARTICLE Filters with Github Actions In this tutorial, you will learn how to implement your version of [skip ci] of GitHub Actions to control when executing a workflow or jobs. READ MORE →
  13. ARTICLE Integrating AI models into Zulip bots using FastAPI: Part 1 Artificial intelligence is a powerful tool for automating tasks and improving the efficiency of your business. In this series, we'll explore how to integrate AI models into Zulip bots using FastAPI. READ MORE →

2022 14

  1. ARTICLE A pattern for strategy backtracking using Python generators While fixing a bug that was affecting an ETL pipeline, we found a clean and simple pattern for strategy backtracking using Python Generators and generator expressions. READ MORE →
  2. ARTICLE How to mint NFTs using Solana's mobile wallet adapter React Native is a powerful tool for developing mobile apps that make use of Solana's mobile wallet adapter. Here's how to use the tech to mint an NFT. READ MORE →
  3. ARTICLE How to build a modular arithmetic library in Python In this tutorial, we're going to learn how to create a library for modular arithmetic, using operator overloading and redefining the built-in functions for NumPy. READ MORE →
  4. ARTICLE Ramping up on Solana Phone: Crypto for mobile The upcoming launch of Solana Mobile has a lot of us intrigued! We run you through what this new tech is and how to get set up. READ MORE →
  5. ARTICLE How to get blog post ideas as a developer Whenever I hit writer's block, I explore these four areas. They've never failed to help me find ideas for my next article. READ MORE →
  6. ARTICLE Python vs Javascript: Dealing with the quirks of async/await As someone who's used to implementing asynchronous programming in JS, implementing it in Python came as a surprise. Here's what I learned. READ MORE →
  7. ARTICLE Building a FastAPI Server to Evaluate Mathematical Functions We make an already-powerful program for plotting mathematical functions even better using three steps. READ MORE →
  8. ARTICLE How math makes matches meaningful In this blog, we show you how finding the right algorithm can make the difference when it comes to creating meaningful, professional connections virtually. READ MORE →
  9. ARTICLE A how-to guide for OOP in Golang (for Python users) I'll use an example scenario to demonstrate the features of the OOP model, show you how to implement the OPP model/principles in Python, and compare that to the implementation in Golang. READ MORE →
  10. ARTICLE How to setup a Wasm API for a CHIP-8 emulator In this guide, you'll learn how to keep control over the lifecycle of the library, allow signals/commands, and callbacks – all while keeping the asynchronous style that you know and love! READ MORE →
  11. ARTICLE Technical solutions to tackle AI bias Yes, we want more diverse workplaces but there are things on the computing side companies and developers can do to make AIs fairer. READ MORE →
  12. ARTICLE How to mint and reveal NFTs with Candy Machine V2 In this tutorial, you'll learn how to create a “mint and wait for reveal” Candy Machine. Doing so will allow Candy Machine users to mint “closed” NFTs and wait for them to be “revealed” at a later date, bringing elements of anticipation and e
  13. ARTICLE The Ins and Outs of Logging in Python, Part 1 A guide to using logging in Python. The fundamental concepts are discussed and illustrated with simple examples. READ MORE →
  14. ARTICLE How to import your wallet to Solana CLI Whether you're looking to backup your wallet or deliver NFTs, importing your wallet is a great trick to have up your sleeve. READ MORE →

2021 12

  1. ARTICLE The Rust Journey, Part 0: Why Systems Software and Why Rust? Part 0 in our series about learning and writing systems software using Rust. READ MORE →
  2. ARTICLE Operator Overloading in Python What is operator overloading and how does it work in Python? READ MORE →
  3. ARTICLE How to Plot Mathematical Functions in 10 Lines of Python How to build a mathematical functions plotter using Python, NumPy, SymPy, and Matplotlib. READ MORE →
  4. ARTICLE Starting and Running Your First Program on a Mainframe How to run your first program on a mainframe using open source software. READ MORE →
  5. ARTICLE All Systems are Human Systems All systems in the field of software engineering are built by humans, to serve human purposes, and sometimes have broad but subtle influences in society and politics. It's in all of our best interests to to understand the broader, human scope that these systems
  6. ARTICLE Learning COBOL: A Journey For The Modern Programmer A guide to learning COBOL for the modern programmer. READ MORE →
  7. ARTICLE Cinco Paquetes de Django Que Amamos en Monadical Uno de los mayores atractivos de Django es su ecosistema. Si se presenta algún problema existen muchas posibilidades de que alguien en la comunidad también lo haya tenido, y fuera tan amable de abstraerlo en un paquete reutilizable y publicarl
  8. ARTICLE Five Django Packages We Love at Monadical One of the biggest draws to Django is its ecosystem. If you encounter a problem, the chances are that someone else in the community has too, and has been kind enough to abstract it into a package and release it. Here are five packages we find ourselv
  9. ARTICLE Drone Web Platform A platform for operating drones through the internet. READ MORE →
  10. ARTICLE Implementing C++ Virtual Functions in Cython This is an extensive article that assumes Cython knowledge and describes two strategies for using C++ code from Python, requiring the implementation of virtual functions in C++ abstract classes. READ MORE →
  11. ARTICLE How to Make Library Distribution Easier A Manylinux-Based Web Building Platform READ MORE →
  12. ARTICLE How to Build a Python Library Share Developments and Contribute to the Community READ MORE →

2020 15

  1. ARTICLE Event Diven Architecture part 1 Lessons learned in building a poker platform using event-driven architecture, part one--the backend. READ MORE →
  2. ARTICLE How to Set Up a CI/CD Workflow, Part 3 CI/CD Workflow For a Flask App Using GitHub Actions and AWS ECS READ MORE →
  3. ARTICLE Why should you use an ORM (Object Relational Mapper)? Budding web developers learning Model-View-Controller frameworks are taught that they should use an Object Relational Mapper (ORM) to interface with their databases. But the “why” is often brushed aside or omitted entirely, leaving a fled
  4. ARTICLE A Cheat Sheet for Using your JWT Authentication with Django Getting DRF, SimpleJWT and Firebase to play nice. READ MORE →
  5. ARTICLE How COVID-19 will affect Outsourcing Trends How the increase in remote work during COVID-19 will affect companies' decisions on whether to outsource. READ MORE →
  6. ARTICLE How to Migrate from Firebase to Django Strategy and tips on how to migrate from Firebase to Django (or another SQL ORM) READ MORE →
  7. ARTICLE Drone Mapping: How to Create Your Own Terrain Surface Model An introduction to drone mapping. How to create a terrain surface model using a mobile app, your computer or cloud service, and your own drone. READ MORE →
  8. ARTICLE Why Everyone Should Know About Docker What is Docker and how does it work? This introduction walks you through the benefits of this core technology and shows you how to get started with it. READ MORE →
  9. ARTICLE How to set up a CI workflow How to set up a basic CI workflow using GitHub and AWS, relying completely on managed services so you don't increase your maintenance burden. READ MORE →
  10. ARTICLE Unix System Monitoring and Diagnostic CLI Tools An opinionated list of CLI utilities for monitoring and inspecting Linux/BSD systems. READ MORE →
  11. ARTICLE Why Open Source Projects Are Key to Innovation & Technology Find out how open source projects are essential to innovation and the development of new technology. READ MORE →
  12. ARTICLE How to Fit All Human Knowledge in a Box How we used the power of Cython to help streamline how knowledge can be packaged and accessed all over the world – even without the internet. READ MORE →
  13. ARTICLE How to Make Remote Work: Part Two, Zulip How I've learned to be productive working from home. I'll write a second guide about how I think about remote work as a manager and the processes Monadical have put into place to make things work for us. READ MORE →
  14. ARTICLE How to Make Remote Work: Part One How to build asyncronous processes that enable you to work efficiently with a distributed engineering team. READ MORE →
  15. ARTICLE A Postfix deployment postmortem: Debugging short-circuiting of mapping lookups How we tracked down and fixed a bug caused by Postfix's type:table using the new unionmap feature. READ MORE →

2019 4

  1. ARTICLE Python Performance Profiling and Optimization Modern techniques for performance profiling & optimization of Python applications. READ MORE →
  2. ARTICLE Our Favorite Technical Blogs A list of our favorite technical blogs by friends, prominent programmers, and other companies we follow. READ MORE →
  3. ARTICLE An Introduction to HTML and CSS Anatomy A basic introduction and glossary for people learning HTML, CSS, and Javascript. Intended for people just getting started with frontend development. READ MORE →
  4. ARTICLE Easier Refactoring by Avoiding DRY Patterns A short post about a particularly nice pattern for future refactorers that breaks the Don't-Repeat-Yourself principle commonly taught to beginners. READ MORE →

2018 5

  1. ARTICLE Security Breach Response Guidelines What should you do if your company gets hacked? What are the things to avoid and what are the procedures to follow? We explore the whole process in this post. READ MORE →
  2. ARTICLE Cleaner JS Animation Architecture With Functional Declarative Patterns As systems get more complex, they trend towards expressing more of their complexity as data. Animations can be defined in data too. READ MORE →
  3. ARTICLE Server Provisioning and the /opt Directory An overview of how we provision and organize code and data on servers using the UNIX /opt directory. READ MORE →
  4. ARTICLE A Strategy for Linearizing Database Operations Everyone wants their writes strictly ordered, if we can represent a list of write operations as a data structure, that gets easier. READ MORE →
  5. ARTICLE Database Integrity Principles for Safe Systems Design strategies and common pitfalls that come into play when designing a banking service to handle concurrent transactions in a distributed environment. READ MORE →

2017 5

  1. ARTICLE The Full-Stack Developer Checklist A checklist of things for full-stack developers to strive to learn, spanning everything front frontend, to backend, to native development and devops. READ MORE →
  2. ARTICLE The Redux Store as the Frontend's Database Storing data in a normalized form allows us to calculate fast indexes for lookups. READ MORE →
  3. ARTICLE Monadical Applicant Study Guide A list of documentation, resources, and example projects for potential applicants who are thinking about joining Monadical. READ MORE →
  4. ARTICLE Reconciling Templates and JS Components The fundamental issue is that Django wants you to build up your pages using template fragments, and React wants to pull you into its world with JS components as the main building blocks. READ MORE →
  5. ARTICLE Monadical Principles Handbook Our goal with this document is to share some of our knowledge and expertise around the process of working together as a team, in order to achieve a more efficient, happy and healthy working environment. READ MORE →

2016 3

  1. ARTICLE Two Approaches to Concurrent Write-Safety in Django When dealing with Django models accessed by multiple people, you want a way to make sure two requests don't perform writes at the same time. READ MORE →
  2. ARTICLE A Map of Computer Science Subfields A map of all the subfields encompassed by computer science, with job titles commonly used to hire people in those areas. READ MORE →
  3. ARTICLE Redux State-Sharing Approaches When writing an app using Redux and React, you may run into the common problem of having to share state between multiple components in your app. READ MORE →

Undated 11

  1. ARTICLE Vibe code isn't meant to be reviewed * How to stay in control of codebase and not lose vibe code productivity boost. Explicit vibe/human code separation through modular approach READ MORE →
  2. ARTICLE Python Packaging Guide for APT/Debian A quick guide on how to package your Python/pip project into an apt-installable Debian package using stdeb. READ MORE →
  3. ARTICLE Some Unofficial WireGuard Documentation Some unofficial documentation for the WireGuard VPN, including config API reference, tutorials, examples, and projects. (This is a mirror of the original on Github) READ MORE →
  4. ARTICLE Oddslingers Open Source Announcement The OddSlingers poker platform, built with python/django in the backend, and react/redux in the frontend, is now free and open source. READ MORE →
  5. ARTICLE How to Set Up a CI/CD Workflow, Part Two In a previous article, I explained how to set up a pipeline to send images from GitHub to AWS ECR. In this article, I will focus on implementing the missing steps required for a fully functional CD pipeline. READ MORE →
  6. ARTICLE The Year of the Linux Desktop The year of the Linux desktop has arrived. This is a guide for how to improve the Linux desktop experience. READ MORE →
  7. ARTICLE We're Building A Company, Not An ICO A frank discussion about the benefits and pitfalls of the ICO hype, and why Monadical' vision goes far beyond short-term fundraising. READ MORE →
  8. ARTICLE The State of Poker Platforms in 2018 An overview of the all the current online Poker networks as of 2018, with pros and cons for each and a summary of features. READ MORE →
  9. ARTICLE The Myth of Trustlessness The word “trustless” implies that trust has been removed from the system altogether. But in reality, systems like Bitcoin require plenty of trust, it's just less obvious. READ MORE →
  10. ARTICLE An Explanation of Segwit and the Lighning Network Segwit increases total number of bytes for each transaction (very slightly), but changes the way that block size is calculated so that the signatures don't count as much against the limit. READ MORE →
  11. ARTICLE Downswings and the Information Game I often hear players say, “I hate that site. It’s completely rigged. I can never win there.” Perhaps those players simply ran bad at first on that site... READ MORE →