When AI grabs the wheel: what drift is
What drift means when working with AI, how an agent can obey the task and then grab the wheel anyway, and practical ways to prevent that slide from hurting quality.
Read →Articles, conference talks, external publications, and practical reflections on software engineering, architecture, testing, applied AI, and team practices.
Filter posts and external publications by title, description, or post tags.
No results match your search.
What drift means when working with AI, how an agent can obey the task and then grab the wheel anyway, and practical ways to prevent that slide from hurting quality.
Read →Generative AI has drastically reduced the cost of producing code, but it hasn't eliminated the need for technical judgment. Quality doesn't depend on the model — it depends on the environment we build around it.
Read →A practical introduction to Git through a multiverse metaphor: repositories, commits, branches, merges, remotes, and history hygiene.
Read →Introduction to pair programming within the Extreme Programming framework: what it is, its benefits, and how to adopt it in development teams.
Read →How to improve the maintainability of test code, making it more resistant to change and easier to understand over time.
Read →A quick tour of Kotlin features including immutability, raw strings, data classes, companion objects, generics, sealed classes, contracts, and property delegation.
Read →A short React note on concurrent state updates and how updater functions prevent inconsistent overwrites when multiple processes write at once.
Read →A reflection on becoming CEO at Lean Mind, the company vision, team wellbeing, intrapreneurship, and the commitment to collaborators and society.
Read →Interview summary with Adrián Ferrera, CEO of Lean Mind, about the company's origins, culture, consulting model, and future direction.
Read →An introduction to Elixir covering its functional model, pattern matching, the pipe operator, and doctests, with a final recommendation to practice using Elixir Koans.
Read →A short event report about Tech Tides and the session on sustainable frontend architecture, including links to the recording and the slide deck.
Read →How to use type composition to model complex scenarios more precisely and avoid overly generic structures built from optional properties.
Read →In many cases, our React components are wrapped in contexts, creating strong dependencies (coupling) between them. That's why unit testing can become challenging if we don't understand how these pieces work and how to mock them.
Read →Talk presented at JS Day Canarias: an ironic analysis of the most common antipatterns in software development.
Read →A practical reflection on how to choose the foundation of a React project by evaluating SSR, SPA tradeoffs, bundlers, learning curve, maintainability, and real product needs.
Read →Estimating software projects is hard. Practical ideas to improve estimation, handle uncertainty, and communicate better with stakeholders.
Read →A clear explanation of technical debt, how it accumulates, its consequences, and how to manage it without slowing product development down.
Read →Presentation on the software architect role: what defines it, when it makes sense, and how it coexists with teams that practice software craftsmanship.
Read →Slides on non-dogmatic architecture: how to design systems that adapt to business changes without being trapped by premature decisions.
Read →An introduction to the aggregate pattern in DDD: what it is, what responsibilities it defines, and how to persist it correctly when root entities and domain services are involved.
Read →An analysis of TypeScript enums, their tradeoffs in emitted code, and more idiomatic alternatives for modelling fixed values.
Read →Slice tests are kind of integration tests used for checking the behaviour of a given layer of the application. In this example we will see what is the intention and how to check the repository layer
Read →tsyringe is a library developed by Microsoft that makes dependency injection in TypeScript easier. In this post we review where this concept comes from, what it is for, how to configure a project, and several usage examples.
Read →English hosted translation note for the Software Crafters article about applying hexagonal architecture to frontend applications and keeping domain code isolated from infrastructure details.
Read →The functional operators of javascript arrays group a set of operations to be performed on the array in question. The best known are: forEach, map, find, filter and reduce. In this article we will see how to move our classic loops code to this functional form
Read →English hosted translation note for the Software Crafters article about applying TDD in React with TypeScript, from use-case thinking to testing strategy tradeoffs.
Read →Presentation on how to test custom hooks in React: strategies, tools and best practices for keeping hooks well covered.
Read →A short reflection on how to approach TDD in UI work by focusing on use cases instead of tests that are tightly coupled to implementation details.
Read →What custom hooks are in React, how to extract reusable logic into them, and when it makes sense to test them in isolation.
Read →How to propagate configuration from docker-compose and Dockerfile into a Java/Spring application to avoid manual environment switching and deployment mistakes.
Read →Presentation on how to build robust, fault-resistant React components by applying defensive design principles.
Read →Presentation on fundamental software architecture concepts: layers, responsibilities, dependencies and design principles.
Read →Introductory presentation on testing in TypeScript applications: motivation, types of tests and first practical steps.
Read →Introduction to TDD: the red-green-refactor cycle, the benefits of writing tests before code, and how to adopt it in a team.
Read →Techniques and patterns for writing tests that communicate their intent more clearly: expressive names, builders, and helpers that cut noise without hiding behaviour.
Read →The case for adopting TypeScript in JavaScript projects: gradual typing, better DX, earlier error detection, and an ecosystem backed by a massive community.
Read →Talk on the current state of programming and software development as a profession: community, continuous learning and future perspective.
Read →Presentation on how to control Redux complexity: patterns for keeping state predictable and code maintainable in large applications.
Read →Introduction to NgRx as a reactive state management solution for Angular, using Redux-like patterns and RxJS.
Read →How to set up Enzyme for testing a React Native app, what changes compared with React on the web, and how to verify press and change events by injecting callbacks.
Read →A practical reflection on TDD, pair programming, hexagonal architecture and katas: how to start from concrete use cases and let code evolve safely from tests.
Read →How to model and structure data in Cloud Firestore taking into account its particularities as a document-oriented NoSQL database.
Read →Practical guide for migrating an Angular project to version 6: dependencies, API changes, migration tools and common errors.
Read →