When I am designing technology, I like to think about how fast I can make the experience. This involves making conscious engineering decisions at the beginning of a project to lay the foundation for building a fast application (i.e. choosing the right data structures). Then, as I develop, I ask questions like “is this as fast as it should be, given what I know about this problem space?” Where things are slower, I can start investigating ways to make the application or tool faster.
In the audio note below, I talk about:
- Performance as initial loading time, interactivity speed, and processing speed.
- How fast loading times can make an experience with technology more delightful.
- Profiling systems, with reference to an example of a project I worked on where I found ~12 million Python
dictionary.get()
calls being made.