The Idealism and Practicality of Software You Can Love

SYCL Talks Day (Sun) • 09:30 • Duration: 45m

Software You Can Love is about software that respects the user, created through a process that respects the developer and everybody else involved. If you think about modern software, more often than not, one or more of the things just mentioned are missing.

Social networks nag you regularly about enabling notifications and all you can say is “not now”, game developers are subjected to “crunch time” and then get tossed away like trash once the game releases, leaving only a skeleton crew to maintain the inevitable lootbox system aimed at giving a taste of gambling addiction to underage players. And this is just to name a couple of examples, we could go on for days.

Agile, clean code, the hexagonal architecture, event sourcing, microservices, CI/CD, etc. Each of those practices identifies a problem in software development and tries to solve (or at least mitigate) it. We could debate about the degree of success of each, but it’s painfully clear that none of these terms can help us reason about the biggest problems of modern tech, and yet you’re often told this is all you need to think about to be a good software engineer.

I don’t believe that Free Software nor Open Source can meaningfully help us either, so it’s time to stop hoping for a frozen meal ideology to solve our problems, and to start thinking about what’s the correct mindset to identify and tackle the rot that is affecting our craft.