I'm enrolled in grad school and this summer we're tasked with a series of projects that should include implementations of design patterns from a couple of textbooks. Our first project is for one of a handful of system architecture patterns, and I can't seem to come up with a project to work on outside of examples involving object metaphors that do no real work. Which is probably fine, given the time frame (2 projects & a report a week). Still, we have more time in the Fall and Spring, and I'd like to... well, just be more creative in coming up with projects. The ability to come up with a kind of actual problem to solve that fits a particular solution, without being contrived, seems like a difficult skill to develop to me. With so many programmers being self-taught, however, I just figured I'd ask: When teaching yourself new skills in a hands-on manner, how does one find inspiration for projects?
Edit: This is unconstructive. Above, I bolded what I wanted, but I've been thinking today about how that's really not necessary and I forgot what school was supposed to be. What it really comes down to is doing the best job of meeting a goal within the allotted constraints. Ideally for a goal like gaining experience using a system architecture design pattern you'd want an actual software system to develop and more than a week after-hours to do the actual designing, development, and documentation. None of that is actually necessary in terms of actually meeting that goal. When it comes down to the constraints of a school assignment I'm simply going to be doing the best with what I have, which unfortunately is going to have to be some hokey console app with lots of
<component> <verbed> <component> lines of output, and a solid report explaining how I met the goal.