Blogs_

Why TDD and AI Need Separate Contexts
TDD and AI look like a perfect match — a clear reward signal meets immediate feedback. In practice, they break each other without deliberate context management.

The Context Window Is an Architectural Constraint
In a multi-repo environment, an AI agent working in one repository can't see what happens in another. This is not the model's fault — it's a lack of context that you have to build.

Developer Mentoring: Why Building Software Well Requires Building People First
Developer mentoring is how organisations turn AI-era speed into sustainable quality. What it actually covers, how to structure it, and how to measure outcomes that connect to business value.

Agentic AI, MCP, and Technical Debt: Key Terms in AI-Assisted Development Explained
Agentic AI, MCP, AI-assisted development, technical debt — the vocabulary of software development is shifting fast. Here is what these terms actually mean and why they matter to your organisation.

AI Technical Debt Is Different
AI lowers the cost of adding code and raises the cost of understanding it. AI technical debt is different from traditional technical debt — and requires a different approach to manage.

AI Is a Multiplier of Your Current State
AI is not a solution to broken processes. It is a multiplier of the current state. Why software craftsmanship, test-driven development, and process discipline become especially important in AI-assisted development.

The Socio-Technical Architecture of Extreme Programming: Foundations, Philosophical Roots and the Agentic Future
How Extreme Programming's values and practices hold up in the age of AI, vibe coding, and agentic software development. A deep look at XP's foundations, philosophical roots and what SE 3.0 means for software craftsmanship.

CEO’s Vibe Coding Adventures into Website Development
It seems the direction the web is evolving is from personal blogs and websites to centralized platforms like social media and AI-powered chatbots.

Will Websites Soon Become Equal to Driving a Vintage Car?
It seems the direction the web is evolving is from personal blogs and websites to centralized platforms like social media and AI-powered chatbots.

What is technical debt and when should you accrue it?
Technical debt exists everywhere in IT and is an inseparable part of software development. To discuss technical debt properly we should first define what it means.

2026 Predictions
Predictions for the year 2026 from IT and market that affect Finland.

Building Sustainable Development Practices at Metso
How we simplified architecture and increased new feature development speed.

Book Club: Fundamentals of Software Architecture
Reviewed the opening chapters of the book along with our observations on software architecture. Focused on modularity.

Assess. Reflect. Improve. Bytecraft’s Software Development Maturity Assessment
Software development success depends on people with their collaboration, clarity, and shared purpose.

Speeding up your CI pipeline by 50% or more
Are you running `docker build` in your pipeline? Remember to enable image caching.

Implementing change
New software to solve problems that didn’t exist last year are coming to the market all the time. Understanding that you can’t stay up to date with all of them is the first step.

Mutation testing
Because you want to make working software, you are writing tests to ensure that your software works... but how can you verify that do your tests actually work?

Software development at and with Bytecraft - Part 4: Being a Crafter
Term Crafter refers to Software Craftsman, but we felt Crafter being more inclusive as a term.

Meetup: DevOps, building community, DevSecOps and more
Welcome to our hosted meetup focused on DevOps with talks from leading people in Finland. Janne Hyvönen from Nitor and Niko Kivelä from SOK.

Software development at and with Bytecraft - Part 3: Value
In this part we focus on value. What is value, how to measure it and how to add value in software development context?

Software Development at and with Bytecraft - Part 2: Skills
Software development today is quite demanding and delivering successful software projects requires a broad set of skills.

Software Development at and with Bytecraft - Part 1: Perspective
Delivering working and robust software is non-trivial in a typical software project setting. To better understand why, we need to look at the bigger picture.

Why is great documentation cheap?
Documentation is essentially an instructions manual to any software you are working on or building. The better the instructions manual is the faster you can get started.
Employment Contract Tailored for Commission-Based Work
We pay salaries purely on a commission basis based on each employee's personal billing. We believe this is the best way for every employee to be 'paid what they're worth'.

Case of UI & UX in enterprise software for cognitive ergonomics
Why do you think we allow horrible user interfaces and user experiences in our enterprise software? Especially when we are extremely critical of software we use everyday? Like Netflix, Spotify, social media, etc.

Software Architecture and Functional Domain Modelling
This autumn, we read 'Domain Driven Design Made Functional' in our book club. The book was quite inspiring and served as the spark for this blog post.

Password Durability
TL;DR: The computing power of computers is growing exponentially, and it has a huge impact on the strength of passwords. On the other hand, passwords with 192 bits of entropy are impossible to crack.

Practical state machines
State machines are the University's answer for handling strings. Do they have any practical uses?

When the framework takes over
In recent years, applications have emerged that have become prisoners of their framework.
What Does Bad Code Cost?
What does code actually cost? Over the last 15 years, there have been many good and, from my own experience, credible studies and estimates on the impact of bad code on costs.
