Engineering archive
The engineering archive
Articles written by the engineers who did the work, under their own names: the language choices, the debugging tools, the proofs that failed, the delivery methods that stuck. There are no ghostwriters in it and nothing is behind a form.
104 Articles 2019–2026
27 Named contributors Engineers, under their own names
9 Topics Clojure to formal methods
RSS · Newer, evidence-labelled work lives in Research · Papers and proofs of concept live in the Lab
Topic
Showing all 103 articles below, plus the latest above.
- Clojure & functional programming
Why Functional Programming Makes Complex Systems Easier to Build
Big systems get complicated fast. Features + changes tangle code → tough updates.Functional programming keeps code solid: predictable, clear, reusable. Easier to read, test, debug, extend. It helps teams stay coordinated and lets developers spend more time building new things—not just untangling… Jiri Knesl · 3 Sept 2026 - Engineering practice
Why Most Developers Make Algorithms More Complicated Than They Need to Be
Most developers don’t write tangled algorithms because they lack skill. The problem may start before they write a single line. Most developers don’t create complicated code because they lack skill. It often starts with how they approach the problem. A simple idea can slowly turn into nested… Jiri Knesl · 24 Aug 2026 - AI & machine learning
From Prototype to Production: The Business Case for Chachaml Part 3
This is the final article in our series, Clojure Meets Production MLOps: How chachaml Delivers AI-Native Workflows. If you’re joining here, you may want to start with the earlier posts: In this final article, we’ll focus on the business side. Jiri Knesl · 29 Jun 2026 - AI & machine learning
Inside chachaml: Core Capabilities for AI-Native Workflows in Clojure Part 2
This is Part 2 of our series, Clojure Meets Production MLOps: How chachaml Delivers AI-Native Workflows. If you missed Part 1, Why Machine Learning Projects Fail in Production—and How chachaml Solves the MLOps Gap, we covered a common issue in machine learning. Jiri Knesl · 26 Jun 2026 - AI & machine learning
Clojure Meets Production MLOps: How chachaml Delivers AI‑Native Workflows ( Part 1)
This is the first article in our three-part series, Clojure Meets Production MLOps: How chachaml Delivers AI-Native Workflows. In this article, we look at a problem many ML teams run into. Jiri Knesl · 24 Jun 2026 - Clojure & functional programming
Building Data-Heavy Systems in Clojure Without Losing Simplicity
As data volumes grow, complexity tends to grow with it, but Clojure offers a different approach using simple, data-centric architectures. Jiri Knesl · 6 May 2026 - AI & machine learning
Data Pipelines for Machine Learning: From Ingestion to Training (2026 Guide)
Most of what decides whether a machine-learning system works is the data pipeline behind it, not the model on top. Jiri Knesl · 9 Apr 2026 - AI & machine learning
MLOps in 2026: What Is It and Why Should You Care?
MLOps is the operational framework that ensures machine learning models are built, deployed, and run efficiently at scale. Jiri Knesl · 9 Apr 2026 - Clojure & functional programming
New Era for Clojure: Infix Syntax!
Flexiana open-sources Infix, a library that brings natural infix notation to Clojure while compiling to standard prefix forms with zero runtime overhead. Jiri Knesl · 1 Apr 2026 - AI & machine learning
LLM Integration for Internal Tools & SaaS Products (2026 Strategy Guide)
By 2026, LLM integration has become standard for modern platforms. This guide explores strategies for embedding AI into internal tools and SaaS products. Jiri Knesl · 25 Mar 2026 - AI & machine learning
How to Get Started with Machine Learning (2026 Implementation Guide)
A comprehensive guide to implementing machine learning in 2026, covering the 5-step roadmap from problem definition through scaling. Jiri Knesl · 17 Mar 2026 - AI & machine learning
MLOps Maturity Model 2026: 4 Stages to Resilient, Risk-Free Machine Learning
The MLOps Maturity Model breaks down the machine learning journey into four stages, from experimental work to production-ready operations. Jiri Knesl · 5 Mar 2026 - AI & machine learning
Common MLOps Bottlenecks (and How to Fix Them): Proven Solutions for Scalable AI Deployment
This article examines six common MLOps bottlenecks that prevent machine learning projects from reaching production and provides proven solutions. Jiri Knesl · 2 Mar 2026 - AI & machine learning
Clojure + NumPy Interop: The 2026 Guide to Hybrid Machine Learning Pipelines
Developers can integrate Clojure's stability with NumPy's computational speed using libpython-clj, enabling hybrid ML pipelines. Jiri Knesl · 27 Feb 2026 - Clojure & functional programming
ClojureScript Guide: Why Modern Devs Need It Now (2026 Edition)
ClojureScript compiles to optimized JavaScript, offering functional immutability, live REPL hot-reloading, and cleaner async workflows. Jiri Knesl · 13 Feb 2026 - AI & machine learning
What Mature MLOps Really Looks Like in 2026: From Experiments to Enterprise‑Scale AI Systems
MLOps is not just about putting a model into production and moving on. It is about treating machine learning as a real, production-ready system, one that requires structure, discipline, and regular attention. Jiri Knesl · 9 Feb 2026 - AI & machine learning
Machine Learning with Clojure: Benefits & Perspectives
Explore why Clojure is gaining attention for machine learning projects, comparing its benefits to Python and showcasing real-world use cases. Jiri Knesl · 23 Jan 2026 - AI & machine learning
Baby Dragon Hatchling (BDH): The Brain-Inspired AI Architecture Built for the Future
BDH represents a paradigm shift in AI architecture, introducing real-time learning and synaptic plasticity to overcome the limitations of static Transformer models. Jiri Knesl · 21 Jan 2026 - Clojure & functional programming
Building web services with Duct
A comprehensive guide to building web services with Clojure and the Duct framework, covering architecture, testing, and deployment. Lukas Rychtecky · 20 Jan 2026 - AI & machine learning
Bayesian vs CatBoost: Decoding Purchase Intent for Smarter E-Commerce Pricing
Explore how Bayesian models outperform traditional ML approaches like CatBoost for intent-aware e-commerce pricing strategies. Jiri Knesl · 2 Jan 2026 - AI & machine learning
Machine Learning in Clojure with libpython-clj: Unlocking Causal Insights Using Microsoft's EconML [Series 3]
Explore how EconML enables causal inference in Clojure, moving beyond A/B testing to reveal heterogeneous treatment effects across customer segments. Jiri Knesl, Ganesh Neelekani · 22 Dec 2025 - AI & machine learning
Machine Learning in Clojure with libpython-clj: Bridging Functional Elegance and Python's ML Power [Series 1]
Discover how to leverage Python's ML libraries within Clojure using libpython-clj, combining functional programming elegance with enterprise JVM integration. Jiri Knesl · 22 Dec 2025 - AI & machine learning
Machine Learning in Clojure with libpython-clj: Using Bayesian Networks for Smarter, Interpretable AI [Series 2]
Learn how to implement Bayesian Networks in Clojure using libpython-clj, bridging functional programming with Python's ML capabilities. Jiri Knesl · 11 Dec 2025 - AI & machine learning
Hosting Your Own AI vs Using a Service
A comprehensive guide to choosing between cloud-based AI services and self-hosted infrastructure based on request volume, cost, and control requirements. Jiri Knesl · 25 Nov 2025 - Decision-making
The Power of Bayesian Optimization for Business Success
Learn how Bayesian Optimization accelerates business decisions by intelligently searching for optimal solutions with fewer experiments. Flexiana · 16 Sept 2025 - Clojure & functional programming
FlowStorm: Debugging and Understanding Clojure Code on a New Level
FlowStorm is a powerful tracing debugger and code exploration tool for Clojure that enables developers to understand execution flows and visualize data transformations. Jakub Zika · 13 May 2025 - Clojure & functional programming
Why Clojure Developers Love the REPL So Much
Exploring why the REPL is deeply valued in Clojure development, from its Lisp heritage to its role in modern interactive coding practices. Jakub Zika · 4 Apr 2025 - AI & machine learning
Experience with Claude Code
A week spent testing Claude Code for building Clojure applications, exploring its capabilities and limitations through two ambitious projects. Jiri Knesl · 31 Mar 2025 - Clojure & functional programming
Clojure vs. Other Functional Programming Languages: A Quick Comparison
Exploring how Clojure compares to Haskell, Scala, and Elixir across typing, syntax, performance, and practical use cases. Ramon Rios · 5 Mar 2025 - Systems & tooling
Datomic vs PostgreSQL: Time Travel and Historical Data (Part 2)
Explore Datomic's temporal features and how they compare to PostgreSQL for managing historical data and time-travel queries. Giga Chokheli · 10 Feb 2025 - AI & machine learning
Setting Up a Python Environment for AI Development: A Comprehensive Guide
A comprehensive guide to setting up a Python environment for AI development, covering system requirements, package management, virtual environments, and GPU configuration. Flexiana · 10 Dec 2024 - Systems & tooling
Computers are getting faster, why isn't software getting faster?
Despite exponential improvements in processor speed, RAM, and storage, modern software often feels no faster than before. Khatia Tchitchinadze · 29 Nov 2024 - AI & machine learning
Getting Started with Python for AI: A Complete Beginner's Guide
Learn why Python is the ideal language for AI development and take your first steps into artificial intelligence. Flexiana · 7 Nov 2024 - Systems & tooling
Tracking Working Hours in ActivityWatch Based on Git Activities
Automate time tracking using ActivityWatch and Babashka scripts to log work hours based on git activities. Krisztián Gulyás · 28 Oct 2024 - Formal methods
A Gentle Introduction to Formal Methods in Software Engineering
Mathematical techniques for specifying, developing, and verifying software systems to ensure correctness, reliability, and safety. Cristiano Silva · 24 Oct 2024 - Engineering practice
Integrating the new software with existing systems
Learn key steps for successful software integration to improve business operations, productivity, and customer experience. Khatia Tchitchinadze · 20 Sept 2024 - Engineering practice
Software Development Methodologies
A structured approach to planning and managing software projects, exploring Waterfall, Agile, Scrum, and Kanban methodologies. Khatia Tchitchinadze · 27 Aug 2024 - Engineering practice
Understanding Code Ownership and IP Rights
Learn the essentials of code ownership and IP rights when working with external developers, including different ownership models and legal protections. Khatia Tchitchinadze · 26 Aug 2024 - Engineering practice
Understanding Cloud-Based Software Solutions and Their Benefits
Explore what cloud-based software solutions are and why they benefit businesses of all sizes, from cost savings to enhanced collaboration. Khatia Tchitchinadze · 29 Jul 2024 - Engineering practice
Understanding Software Lifecycle Management
Software Lifecycle Management refers to the process of overseeing and managing the development, deployment, and maintenance of software. Khatia Tchitchinadze · 26 Jul 2024 - Engineering practice
The Importance of Scalability in Software Development
Scalability is a critical factor determining software product success, enabling systems to handle increased workloads while maintaining performance. Khatia Tchitchinadze · 17 Jul 2024 - Systems & tooling
The Laptop and the Beast
How to utilize a bare-bone PC to serve development needs when working on resource-intensive projects. Krisztián Gulyás · 27 Jun 2024 - Interviews
Clojure Corner with Mauricio Szabo
An in-depth conversation with Mauricio Szabo about his journey from Ruby to Clojure, building the Pulsar editor, and the future of interactive programming. Flexiana · 21 May 2024 - Clojure & functional programming
Lisp Game Jam 2024: A Starter Guide for Clojure Devs
A comprehensive roadmap for Clojure and Lisp developers participating in the Spring Lisp Game Jam 2024. Jakub Zika · 10 May 2024 - AI & machine learning
Crafting Synthetic Marvels: Clojure, Python and AI's Synergistic Dance
Exploring the integration of Clojure and Python with Large Language Models to create a JSON data generator using libpython-clj, Jsonformer, and Dolly. Enyert Vinas · 22 Apr 2024 - Formal methods
The Category of "Correct by Construction" Languages
Exploring the history and philosophy of languages designed to eliminate runtime errors through dependent type systems and pure functional programming. Rodrigo Tamiazzo · 21 Mar 2024 - AI & machine learning
Forward Bound: Navigating 2024's AI Trendscape
Exploring major AI trends for 2024 including deep learning growth, NLP advancements, generative AI, and automation across industries. Khatia Tchitchinadze · 14 Feb 2024 - Interviews
Clojure Corner with Yehonathan Sharvit
An interview with Yehonathan Sharvit, author of Data-Oriented Programming, discussing his writing journey, DOP principles, and the future of Clojure. Flexiana · 20 Dec 2023 - Clojure & functional programming
The beauty of using Graph Databases with TerminusDB and Clojure, Part I
An introduction to graph databases and practical examples of connecting to TerminusDB using Clojure. Enyert Vinas · 29 Nov 2023 - Clojure & functional programming
Deterministic Randomness in Elixir
Learn how to manage randomness in Elixir with consistent, repeatable results using generators for testing and reproducible simulations. Dimos Michailidis · 24 Nov 2023 - Clojure & functional programming
Error Handling in F#
A practical guide to error handling in F# using Option and Result types, with computation expressions and validation patterns. Dimos Michailidis · 31 Oct 2023 - Clojure & functional programming
The Growth of Clojure: 2023 Review and 2024 Projections
An analysis of Clojure's expansion in 2023 and projections for its continued growth in 2024. Marek Rinko · 18 Oct 2023 - Systems & tooling
Datomic vs PostgreSQL: Modeling, Setup, and Basic Queries (Part 1)
An in-depth comparison of data modeling, setup, and querying between Datomic and PostgreSQL using a library management system example. Giga Chokheli · 9 Aug 2023 - Project stories
The Creation of Frankie: A Service Design Tale
How Flexiana used service design and iterative user testing to create Frankie, an HR recruitment tool that users love. Elaheh Nazari · 2 Aug 2023 - AI & machine learning
(Generative) AI in Clojure riding on Python Libraries
Explore how to leverage Python's generative AI libraries within Clojure using libpython-clj. Giga Chokheli · 21 Jul 2023 - Interviews
Clojure Corner with Sean Corfield (part 2)
Sean Corfield discusses AI's impact on Clojure developers, TDD practices, and Polylith architecture in this continuation of the Clojure Corner series. Jiri Knesl, Iain Wood · 11 Jul 2023 - Interviews
Clojure Corner with Sean Corfield (part 1)
An interview with Sean Corfield exploring his journey from compilers to Clojure, open source contributions, database experiences, hiring practices, and thoughts on Clojure's niche status. Iain Wood · 29 Jun 2023 - Product & design
How We Validated Two Business Ideas In 30 Days Using Framer
Learn how Flexiana used Framer to validate two business ideas through product and market validation in just 30 days. Ado Omerhodzic · 26 Jun 2023 - Systems & tooling
T-Animations: the Fastest CSS Animations Tool
Discover T-Animations, a new CSS framework inspired by Tailwind and Tachyons that lets you write declarative CSS animations faster using utility classes in HTML. Rodrigo Tamiazzo · 8 Jun 2023 - Clojure & functional programming
Proudly presenting: Unicorn Rainbow
Unicorn Rainbow framework 1.0 is now available - a creative language extension built on Clojure with emojis and cute function names for fun coding. Ado Omerhodzic, Jiri Knesl · 1 Apr 2023 - Clojure & functional programming
Here's why startups should develop in Clojure in 2023
Why Clojure is the optimal programming language choice for startups seeking faster time to market, sustainable team scaling, and better funding prospects. Ado Omerhodzic · 11 Jan 2023 - Engineering practice
These 5 trends will continue to shape the IT industry in 2023
Five key IT trends—AI/ML, cloud computing, IoT, big data, and cybersecurity—are poised to reshape industries and business operations throughout 2023. Ado Omerhodzic · 4 Jan 2023 - Interviews
Meet the Developer: Giga Chokheli
An interview with Giga Chokheli, discussing his journey as a Clojure engineer from Georgia. Flexiana · 8 Dec 2022 - Clojure & functional programming
Swagger Integration in Xiana
Explore how Flexiana integrated Swagger and OpenAPI specifications into the Xiana framework for automatic API documentation. Seçkin KÜKRER · 21 Nov 2022 - Engineering practice
5 benefits of Mob Programming
Mob programming extends pair programming to include multiple developers collaborating simultaneously. Discover five key benefits. Ado Omerhodzic · 8 Nov 2022 - Engineering practice
Is Pomodoro Technique Actionable for Software Developers?
Exploring whether the Pomodoro Technique works for software developers, examining its benefits and limitations for coding work. Elaheh Nazari · 25 Oct 2022 - Project stories
What's co-development with Flexiana like? Crossbeam share their story
Eric Nograles from Crossbeam shares how Flexiana engineers have been key partners during their product-market-fit phase and hyper-growth period. Ado Omerhodzic · 7 Oct 2022 - Clojure & functional programming
Five amazing opportunities that Clojure brings
Explore five key opportunities Clojure offers, from functional programming and JVM interoperability to game development and community engagement. Enyert Vinas · 2 Aug 2022 - Systems & tooling
CircleCI / Docker in docker executor
A step-by-step guide to setting up Docker-in-Docker with CircleCI for running containerized tests with external dependencies. Krisztián Gulyás · 18 May 2022 - Clojure & functional programming
ClojureDart: Aim your darts at the right target!
Explore ClojureDart, a port of Clojure to Dart that enables developers to build mobile applications using their favorite language. Enyert Vinas · 26 Apr 2022 - Clojure & functional programming
Monads in Xiana framework
Exploring monads in the Xiana framework - a lightweight web application framework written in Clojure. Krisztián Gulyás · 16 Mar 2022 - Product & design
UX Copy: How to Get it Right
A 4-step strategy for creating consistent UX copy that reflects brand values and serves user needs. Ado Omerhodzic · 10 Mar 2022 - Product & design
7 Steps to a Successful HR Digital Transformation
A comprehensive guide to navigating HR digital transformation, covering vision alignment, people prioritization, and organizational change management. Ado Omerhodzic · 7 Mar 2022 - Clojure & functional programming
Malli and HTML forms as data
Learn how to use Malli to represent HTML forms as data, managing validation and transformation in your Clojure applications. Enyert Vinas · 28 Feb 2022 - Clojure & functional programming
Investigating Clojure's transducer composition
Understanding why composing transducers behaves like the thread-last macro instead of traditional function composition. João Pedro · 3 Feb 2022 - Clojure & functional programming
Getting Started with Clojure(Script) – Eduardo's Journey
A practical guide to learning Clojure and ClojureScript, covering resources, challenges, and the journey from JavaScript to functional programming. Eduardo Vedes · 18 Jan 2022 - Systems & tooling
WASM Part I: What is WebAssembly? Reasons to take it seriously
An introduction to WebAssembly technology, its goals, and a practical example using ClojureScript. Enyert Vinas · 15 Nov 2021 - Product & design
Inserting Culture into the Algorithms
Exploring how cultural knowledge and context enhance data-driven decision-making through sensemaking and the integration of big data with qualitative research methods. Ado Omerhodzic · 8 Nov 2021 - Product & design
The Design Thinking Playbook: The Highlights (part 3)
Exploring how to merge design thinking with systems thinking and approaches to scaling solutions from concept to production. Elaheh Nazari · 28 Oct 2021 - Product & design
The Design Thinking Playbook: The Highlights (part 2)
Explore design thinking principles including creative spaces, interdisciplinary teams, visualization, storytelling, and facilitator best practices. Elaheh Nazari · 14 Oct 2021 - Product & design
The Design Thinking Playbook: the Highlights (Part 1)
Design thinking is a mindset that helps companies understand hidden user needs through structured phases of understanding, observing, defining, ideating, prototyping, and testing. Elaheh Nazari · 4 Oct 2021 - Clojure & functional programming
A Functional Approach for Problem A of ICPC 2018 World Finals
Demonstrates Clojure features like specs, atoms, and maps to solve an ICPC problem using functional programming and memoization techniques. Luiz Alberto do Carmo Viana · 30 Aug 2021 - Clojure & functional programming
On the Nature of Clojure Protocols
An exploration of how Clojure protocols work and the unexpected behaviors developers may encounter when using them compared to traditional interfaces. Rok Lenarčič · 20 Aug 2021 - Project stories
Frankie
Frankie is Flexiana's internal recruitment and people management system that helps track candidates, interviews, and onboarding through the hiring process. Elaheh Nazari, Jiri Knesl · 11 Aug 2021 - Decision-making
7 Steps to Developing a KPI
A comprehensive guide to developing meaningful Key Performance Indicators, with practical steps for implementation and measurement. Elaheh Nazari · 18 Jan 2021 - Decision-making
How to Estimate and Plan for an Agile Project
A comprehensive guide to agile estimation and planning techniques, based on Mike Cohn's principles and reflected in Flexiana's daily development practices. Elaheh Nazari · 14 Jan 2021 - Engineering practice
Agile Product Management with Scrum: The highlights
Learn key differences between traditional and agile product management, including the role of product owners, sprint planning, and creating successful products with customer feedback. Elaheh Nazari · 28 Sept 2020 - Formal methods
A Safe Virtual Coin in Clojure
How Clojure enables cost-effective development of reliable software through immutable data structures and reference types. Michal Hadrava · 25 Aug 2020 - Clojure & functional programming
Building Speech To Text Web Application – 4. part
Learn how to implement audio recording and AWS Transcribe integration for a speech-to-text web application using Clojure and re-frame. Pawel Zielonka · 19 Aug 2020 - Clojure & functional programming
Building Speech To Text Web Application – 3. part
Learn how to set up AWS SDK, implement Facebook authentication, and create login functionality for a speech-to-text web application. Pawel Zielonka · 17 Aug 2020 - Clojure & functional programming
Building Speech To Text Web Application – 2. part
Learn how to set up a router and manage application state with re-frame in ClojureScript. Pawel Zielonka · 14 Aug 2020 - Project stories
Mobile app for Laclary instantly
A 5-member Flexiana team developed a React Native mobile application for Laclary, an e-commerce platform with blockchain verification. Konstantin Mashirov, Roman Tosnar · 11 Aug 2020 - Clojure & functional programming
Building Speech To Text Web Application – 1. part
Learn how to build a Single Page Application converting speech to text using ClojureScript, AWS Transcribe, Facebook authentication, and AWS S3. Pawel Zielonka · 6 Aug 2020 - Engineering practice
Extreme Programming: Values, Principles and Practices
An introduction to Extreme Programming methodology, exploring its core values, guiding principles, and practical techniques. Lukas Rychtecky · 20 Jul 2020 - Decision-making
ICE score for decision making
Flexiana uses ICE scoring to prioritize improvements by calculating Impact, Certainty, and Effort to make data-driven decisions. Jiri Knesl · 11 Jun 2020 - Decision-making
PAPRIKA: The Art of Decision Making
Learn how PAPRIKA, an algorithm for decision-making, can help managers solve complex problems by comparing alternatives across multiple criteria. Jiri Knesl · 1 Jun 2020 - Project stories
E-commerce information system
How Flexiana helped a major Czech e-commerce company rebuild their back office operations using microservices architecture. Mariusz Kotas · 20 Feb 2020 - Project stories
Building Payment Microservice in Starcity
How Flexiana helped Starcity build a stable, scalable payment microservice by extracting functionality from a monolithic application. Pawel Zielonka · 29 Jan 2020 - Clojure & functional programming
Clojure REPL
Learn how to use Clojure's interactive programming environment for real-time code evaluation and development. Lukas Rychtecky · 10 Jan 2020 - Formal methods
Safer blockchain code through tracking of side effects #3: Clojure, the Evo
Learn how to use Clojure's algebraic effects pattern to build safer blockchain code with compile-time side effect tracking. Michal Hadrava · 22 Oct 2019 - Formal methods
Safer blockchain code through tracking of side effects #2: flooring Haskell
Learn how to encode directory information in Haskell types and cross the type/value barrier for safer blockchain code. Michal Hadrava · 3 Oct 2019 - Formal methods
Safer blockchain code through tracking of side effects #1: eco run with Haskell
Explore how Haskell's type-level tracking of side effects provides safer blockchain code without runtime performance penalties. Michal Hadrava · 13 Sept 2019 - Clojure & functional programming
Emacs and Spacemacs for Clojure – Cheatsheet
A gateway drug to the wonderful world of Emacs and Spacemacs for Clojure users. Iain Wood · 31 Jul 2019 - Systems & tooling
Rails PRO tips: #1 The Rails Way
Separating business logic from Rails framework specifics using Plain Old Ruby Objects. Vít Meloun · 22 Jul 2019
Where the rest of the work lives
We wrote this archive while building. Three other places carry the work itself.