Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I hope I can open a discussion on this topic as this is not a specific problem. It's a topic I hope to get some ideas on how people in similar situation as mine manage their time.

OK, I'm a single developer on a software project for the last 6-8 months. The project I'm working on uses several technologies, mainly .net stuff: WPF, WF, NHibernate, WCF, MySql and other third party SDKs relevant for the project nature. My experience and knowledge vary, for example I have a lot of experience in WPF but much less in WCF.

I work full time on the project and im curios on how other programmers which need to multi task in many areas manage their time. I'm a very applied type of person and prefer to code instead of doing research. I feel that doing research "might" slow down the progress of the project while I recognize that research and learning more in areas which I'm not so strong will ultimately make me more productive.

How would you split up your daily time in productive coding time and time to and experiment, read blogs, go through tutorials etc. I would say that Im coding about 90%+ of my day and devoting some but very little time in research and acquiring new knowledge.


Thanks for your replies.

I think I will adopt a gradual transition to Dominics block parts. I kinda knew that coding was taking up way to much of my time but it feels good having a first version of the project completed and ready.

With a few months of focused hard work behind me I hope to get more time to experiment and expand my knowlegde. Now I only hope my boss will cut me some slack and stop pressuring me for features...

share|improve this question
Voting to migrate to programmers. – The Scrum Meister Mar 6 '11 at 5:13
Yeah, I'd move this to programmers. – Hack Saw Mar 6 '11 at 5:15
1  
It's also not clear this has much to do with .NET. – Hack Saw Mar 6 '11 at 5:19
I feel that this should be moved to the new "The Workplace" site. – Michael Durrant Apr 19 '12 at 1:58

migrated from stackoverflow.com Mar 6 '11 at 5:24

5 Answers

Block parts of your day for the different parts of your work, i.e.:

  • coding = 4hrs
  • blogs = 1hr
  • experiments = 2hrs
  • tutorials = 2hrs

(All the above are example times.)

Be disciplined and keep to these times - you will also find that you will be more focused with a deadline coming up (30minutes left!!) and you will actually achieve more - this is Parkinson's Law.

This way you will do more and do all the things you need.

share|improve this answer
I agree. I mean 90% coding is too much in 1 day imho. The block example above seem to make more sense. – TeaDrinkingGeek Mar 8 '11 at 15:55
1  
Nice answer. I wish management supported such structure. – crosenblum Mar 8 '11 at 16:47

For me, I code at work, only reading/researching if it is directly related to a business problem. Home is where I research and read my usual blogs. However if you are able to listen to something without getting distracted, I would recommend listening to podcasts passively while you code, you would be amazed how much info you can absorb from this practice.

share|improve this answer
3  
So what podcasts do you passively listen to while you code, without affecting its quality! I don't think I'd be able to do that myself, but please share. – tzup Mar 6 '11 at 5:22
Sure, Dev Related: Hanselminutes, .NET Rocks!, This Developer's Life For Entertainment: Freakonomics Radio, The Moth, This American Life, Planet Money – Gent Mar 6 '11 at 5:27

Calculate how long you need/can code in a day. Factors like: amount of work, urgency, your limits (some days are better than others. This may turn into a range.

You need to break up the day, so pick a list of tasks that can be managed in 5-15 minute blocks: email, SO, read short article, look up something, etc. You'll need about 4-6 of these a day.

Find an area you think you need the most help and consider what would benefit the current project. Not always easy if you get into that how do you know what you don't know if you don't know it kind of thing. Maybe an article, an answer to an SO question or a new book can give some insight.

Pick some sort of secondary or way-out-there topic that may have no use right now, but seems interesting/you never know: NoSQL, Functional Languages, mobile devices, COBOL (just checking), Behavior Driven Development, color theory, the future of technology.

Have a very thorough understanding of what your supervisor thinks is important and how you can communicate what you are getting done.

share|improve this answer

I totally agree - but would add that you play them in Windows Media Player or similar (iPod) that has a speed control slider. I listen at 1.6 speed it shaves off about 20 mins per hour. I avoid playing in the iTunes player because although it is rather decent for podcast management, and it has speed control for audiobooks it doesn't let me naturally change the speed of podcast audio or video without converting the files.

share|improve this answer

If you are lucky and your boss allows research in your working hours do as @Dominic proposed.

I am not that lucky :-(.

Furtunately i am also a busy reader of questions in this forum (pm, programmer, stackoverflow) . Whenever there is a question about a technology i donot know i google for it and learn this way what else is in the programming world without applying it.

If there are new jobs to be done i can make proposals about new technologies that can be used (where i read something obout in this forum) and if i am lucky have the chance to try this out.

Beside this i have private projects that i implement in my spare time focussing on technologies that sound interesting.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.