Code quality and design

61 posts
These questions will be answered after technical due diligence

These questions will be answered after technical due diligence

Investing without technical due diligence is like buying a used car without opening the bonnet. This article demystifies the audit process, shares what red flags we look for, and explains why investors should care deeply about code, processes and product.

What would it cost to rebuild this software from scratch?

What would it cost to rebuild this software from scratch?

Evaluating the cost of rebuilding software from scratch involves more than counting development hours; it requires recognising the invisible value of user feedback, lessons learned, and embedded experience.

AI writes bad code, but what if that’s the good news?

AI writes bad code, but what if that’s the good news?

Should engineers fear messy AI code or embrace it as a tool for fast product validation? This story reveals why your cleanest code might not be your most valuable contribution. Why founders will use AI generated code more and more for MVPs and prototyping and why engineers should embrace this.

Another early-stage SaaS founders dilemma: buy a pre-built app or build one from scratch

Another early-stage SaaS founders dilemma: buy a pre-built app or build one from scratch

Should SaaS founders buy or build their MVP? We compare pre-built apps vs custom development across cost, time, scalability, and code quality — so you can choose the right foundation for your product.

🌶️ SaaS startups should never use microservices. Like, never-ever.

🌶️ SaaS startups should never use microservices. Like, never-ever.

Many SaaS startups over-engineer their architecture with microservices. Here's why that's usually a costly mistake—and what to do instead.

The hidden cost of API migrations

The hidden cost of API migrations

Forced API migrations without a rollback plan? That’s how businesses lose trust—and money.

Taming a Python: don't let the snake bite

Taming a Python: don't let the snake bite

Adapting to a new tech stack is all about mindset. Switching from PHP to Python was an eye-opener. Package management confusion, unexpected paradigms, and a lack of encapsulation made for an interesting challenge. Embracing constraints is the secret to growth.

Learning from OSS: legacyBehaviour property on Next.js 's Link component

Learning from OSS: legacyBehaviour property on Next.js 's Link component

Ever introduced a breaking change and instantly regretted it? Components evolve, but forcing users into painful refactors isn’t ideal. Next.js tackled this with a legacyBehaviour flag—letting devs opt out of the new behavior while they migrate at their own pace.

Making an existing Laravel application multi-tenant with Tenancy for Laravel

Making an existing Laravel application multi-tenant with Tenancy for Laravel

Transforming a legacy application into a multi-tenant powerhouse is no small feat. Learn how we tackled the challenges of adding multi-tenancy to a Laravel app, from infrastructure planning to custom bootstrappers, and discover practical tips to future-proof your applications.

You’ve successfully subscribed to madewithlove
Welcome back! You’ve successfully signed in.
Great! You’ve successfully signed up.
Success! Your email is updated.
Your link has expired
Success! Check your email for magic link to sign-in.