Building computer systems via problems rather than solutions

When it comes to building computer computer system, even something as simple as storing the name and address of universities can be surprisingly complicated and messy.  While the mess and complication often can’t be avoided, knowing what the end user needs are can help you come up with the best way of tackling them. “Just” … Continue reading Building computer systems via problems rather than solutions

Language, discrimination and software development

I recently noticed myself using gendered language to talk about computer things where gender was irrelevant.  This got me thinking about language, and prejudice and discrimination, more broadly.  Beyond the obvious, decency-related reasons, being more open to how people are different from you could help you do your job in IT. Gendered magic The trigger … Continue reading Language, discrimination and software development

Random numbers to protect privacy in a pandemic app

A computer system, like a car or a coffee machine, is something designed to meet some requirements.  These requirements usually force the designer to make a compromise, based on which requirements get more attention than others.  (Which is the best car?  It depends on whether speed, size, sustainability etc. are most important to you.) One … Continue reading Random numbers to protect privacy in a pandemic app