Y2K was a feature

Time is a complex mechanism in programming. Whether you’re building a calendar app or a decentralized internet, time will likely play an unexpected role in your software. Popular bugs like Y2K have brought a lot of attention to how easily software can overlook such a vital part of everyday life. These bugs may be fun anecdotes, but they illustrate how difficult it can be to successfully account for every edge case time presents. Why is time so hard to deal with? It goes much further than time zones, daylight savings, and leap years. As product designers and developers, it is essential that we better understand the gap between user expectations and the realities of how time operates. We’ll chronicle some time-related programming bugs and what we can learn from them (and laugh at ourselves a little). We’ll also cover how different languages handle time and some best practices for storing, retrieving, and presenting time. Lastly we’ll dive into the special cases to be aware of as we design and build our software.

No publications here.