16:15 - 17:15
PHP doesn’t have a great reputation in the wider programming community. One reason: It’s really easy to write code with type errors, and it’s pretty hard to spot them manually. When writing PHP at Vimeo, avoiding mistakes is fairly important. For the last four years, I’ve worked on a static analysis tool called Psalm that’s designed to allow PHP developers to express the same sorts of type concepts that are found in TypeScript et al., with fast and accurate type inference that finds bugs. Every time it runs, Psalm informs users about type coverage (the percentage of expressions with inferrable types). This talk will discuss why we prioritised improving type coverage across our codebase and how we’ve increased it with both automated tooling and manual updates. This talk will also outline Psalm’s type inference algorithm, and discuss the myriad benefits of a nearly type-safe codebase from a maintenance and refactoring perspective.