It's Christmas Eve, and I just got back to my empty apartment after hanging out with my family all day. On the drive there I was listening to an interview with the dj/producer Nightmare. I think there are definite parrallels between creating music and creating software so it's interesting to take what he said and inteprete it in terms of programming. Here's what he said.
Come Back And See It With Fresh Eyes
He said that he was working on 15 to 20 tracks at the time, and even though it was somewhat overwhelming he thought it was good because he would come back to the project with "fresh ears and fresh eyes". I can see the parallels here to me working on software projects. When I work on multip[le projects and move from one to the other there are different things I notice coming back to it that you don't really see when working on it day in and day out.
One Or Two Core Projects, and Lots of Spikes
Aside from work, I like to have only one or two core projects that I'm working on. These are meant to be long-term projects with hopes to someday may it to production and be user-facing. However, like Nightmare says it can sometimes get stale always working on that project. Perhaps you are afraid of breaking things and so you don't have the freedom to really experiment how you would like to. This leads into the idea of a "spike solution", a separate project meant to solve a problem or prove something is possible before it's implemented into the core application. You could also take a more fun interpretation of spikes to just mean any project that isn't your 1 or 2 core projects. A spike could be a totally new project or framework, a game, a hackethon project, a hackerrank answer, etc. The point is that you just want to get away from your main project for a while and do some other programming.
Fresh Eyes Without Leaving
Leaving and coming back to your project can give you fresh eyes, but I if you are especially aware of it then you can also in a way give yourself fresh eyes. Think about who your users are (and keep documented notes about people you talk to in real life, who they are, what they like etc). Think about how they would feel about it; about the interface, the colors, the buttons. Think about first impressions and whether they would know what to click. There are many ways to look with fresh eyes, but I think many will agree that fresh eyes are better than stale eyes. ;)
The posts on this site are written and maintained by Jim Lynch. About Jim...