But that doesn’t mean we shouldn’t still give them at times. So,
So, as much I love both cycling and re-cycling, this post is actually about neither of those things. As you might remember, I was going to write about how everything runs on cycles. And so here I am. (In fact, when I finish linking to this article in Monday’s TIL, there will be a cycle there too.)
Actually, we have to go back a little farther in my logic chain, though I promise I’ll circle back around eventually. I was going to write about cycles because of something my coworkers say, and it has stuck in my head.
The phrase goes like this:
If anyone has spare cycles, speak up and we’ll give you work.
It has a few variants, namely,
I’ve got spare cycles, anything I can help with?
Much like Agile sprints, the phrase is predicated that we work in cycles, CPU-style. We have to choose where to spend those cycles: laundry, shopping, working on a caching problem, or checking email, just to name a few.
See, a CPU processes information in cycles. They all have varying speeds, which determine how many cycles they have in a clock tick. And most operating systems have a scheduler which determine what processes get to run when (and with which resources). So the CPU is constantly deciding what things take priority.
Now, imagine you’re a CPU. Go on, become a piece of silicon. Or, rather, imagine that you have lots of things vying for your attention, and you have to decide what gets done and what doesn’t. Sounds more realistic, doesn’t it? Now imagine one of those things says, “Hey, CPU, I’m doing this thing over here with my friends, and I can’t move forward on my task until it’s done. But you can’t do this thing, I have to do it on this other CPU.”
Are you going to prioritize doing it? You can’t, can you? So, instead, you look at your other tasks and you get something done. Because you are a mindless piece of silicon, programmed by Silicon-DNA to be productive and Get Stuff Done™.
This came up at work because I had a “sleepy” process–I mentioned regressions yesterday, and they have decided they need to work before I can continue, but they don’t feel like working.
As a good CPU, I mean, intern, I wasn’t going to sit on my thumbs and wait for something to happen. So I took on the DHCP clustering, then later other projects. I stayed busy.
Well, yes. I mean, I don’t want to get too “Circle of Life” on you, since I don’t have time and I need to wrap this up. But everything is about how you spend your cycles. What do you choose to do today? What do you accomplish and prioritize? What keeps getting put on the back-burner?
Most importantly, how do you choose?
Do you have a system? You don’t have to have a perfect, neatly organized system. But you need something. Complete chaos is the unformed stuff of imagination and dreams, and it’s good and all. It’s what sparks us. But to stay in motion, we have to have cycles. Like wheels. And they aren’t frictionless, I’m sorry to say.
So, how do you choose? Is life an Agile sprint, with backlogs and stories? Is it a pile of Sticky Notes, a file on your computer? Are your priorities dictated to you?
Spend a cycle thinking about it. Trust me, it’s worth it.