Technical due diligence is not a code quality competition, and teams preparing for one usually spend their time on the wrong thing. Nobody buying a company is grading your abstractions. They are trying to work out what it will cost to own this system, and how badly it can go wrong after the money changes hands. That...
Programming Tutorials
Practical programming tutorials with clear examples and best practices for Python, C++, JavaScript and more. Learn design, testing and performance.
Database performance work usually begins with someone proposing a bigger instance, and it usually ends with the discovery that one query was doing a sequential scan over four million rows on every page load. The hardware was never the constraint. The plan was. That pattern is consistent enough to be worth stating as a...
Software testing strategies are usually described in terms of coverage, and coverage is the least informative number in the whole discipline. A codebase at ninety per cent can ship a bug on its most-used path, because coverage measures which lines executed during a test run, not whether anything meaningful was asserted...
Fintech software development is priced and scheduled like ordinary software development right up until somebody asks who is authorised to hold the money. At that point the project stops being an engineering exercise and becomes a regulatory one with an engineering component, and the timeline you had in mind stops being...
MVP software development goes wrong at the scoping meeting, not during the build. Somebody says “minimum viable product”, everybody nods, and then the feature list arrives containing user accounts, an admin panel, billing, notifications, a dashboard and a mobile app. That is not a minimum viable product. That is a...
Anyone estimating custom API development cost from the number of endpoints is going to be wrong, usually by a factor of three. Endpoints are the cheapest part. A dozen of them, reading and writing data you already hold, is a fortnight’s work for a competent backend developer. What costs money is everything that turns...
Buying COBOL modernisation services is unlike buying any other kind of software work. The system in question has been running for thirty or forty years, nobody currently employed fully understands it, and the consequences of getting it wrong are measured in regulatory reporting failures rather than missed sprints....
The decision to hire a C++ developer usually arrives with a specific problem attached. Something has to be fast, or has to run on hardware, or has to interface with a library that only ships a native interface. What follows is a hiring process that treats C++ as a single skill, and that assumption is the source of most...
Third-party API integration is the most consistently underestimated work in commercial software. The documentation reads clearly, the vendor publishes a client library, and someone says two weeks. Six weeks later the team is still arguing about what should happen when a webhook arrives twice for an order that was...
Companies that need to hire a Qt developer are usually building something that has to run on a machine rather than in a browser: an instrument panel, a diagnostic tool, a control application for hardware nobody else supports. The candidate pool is a fraction of the size of the web market, the vocabulary is different,...