When I am working in a real project (paid for) I have a full project roadmap, I set deadlines and I work focused in the project. But when I start some hobby project it's never finished, I'm never satisfied by its quality, why?
So far I have detected the next problems:
- I focus only in the most appealing features to me, and not in getting something working
- I can rarely invest quality time or work more than a few hours in the project
- There's no external pressure
- I use my hobby projects to experiment with new technologies, so sometimes I write the same program with different languages and/or libraries.
What should I be doing?
- I should define a minimum set of features and focus on them before jumping to more fancy and funny stuff
- I should work on my projects only when I can really invest time (vacations, weekends)
- Put deadlines and give me a prize if I make it
- Experiments are great and needed, but I should do them one by one and not try to test multiple things at the same time
What do you think? What are your tips?
See you soon.
I think you've covered it quite well. I also work on a lot of hobby projects (think that is also something to put on the list, to many hobby projects).
ReplyDeleteAn my problem is that i focus more on the code then on the functionality, so i am constantly busy with refactoring parts.
For me a hobby project is also learning new technologies and frameworks which always result in doing a lot of refactoring, but this is to be expected, you base the design on earlier made experiences which may not be appropriate for the chosen technology.
And as a software developer, what is the most appealing for me? the code.. not using the software but just creating the software, so i always have a fealing that it should be perfect.
Hi Ronald,
ReplyDeleteI'm happy you like it.
And I'm in the same ship. I also love the code, but sadly there's people out there that wants to use the software to do something ;)
It's a good approach with a hobby project as well as a real work project to try to *always* have something that works -- never spend more than a day (for a hobby app... maybe more than 8 hours of working time) with a "broken" application.
ReplyDeleteIt might just open an empty window and stop there, it might just return a "hello world" webpage, but get it working ASAP, then focus on adding your features one small bit at a time.
Nice writeup. I think we are many in this camp, probably I finish only 5-10% of the stuff I start.
ReplyDeleteHowever I look at it a bit differently, the 90-95% is not exactly wasted time as 1) I usually improve on some skill or another and 2) It doesn't really seem more wasteful than some of the craft stuff my girlfriend likes and 3) I'm having fun.