Ask HN: Tricks to integrate late coding session in current workflow?
11–20 of 28 posts
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#12Let me turn this question around a little. I'm a manager of a software development department. I have a coder who works best at night. I got upset with him for falling asleep at his desk. Not once, but many times. He tells me "I'm up all night working". To make this situation worse, our office is very over-crowded. It's hard for me to see how anyone gets anything done. But, we have meetings the devs need to be at. Pr…
From there, have him communicate with the rest of the team on what to do - he should be able to do it via group chatrooms, conference skype calls and emails. I'm sure there is a time that's convenient for literally everybody to meet, even if not everyone will be meeting in person.
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#13Here's what works for me: 1/ - Intense workouts early in the day - A lot of water - Sunlight 2/ - Airplane mode - Batching email, IM, SMS, .. - Automate payments - It's ok to be late with administration sometimes Books that really helped me: - The 4-Hour Workweek by Tim Ferriss [1] - Getting Things Done by David Allen [2] - Rework by Jason Fried [3] [1] http://amzn.com/0307465357 [2] http://amzn.com/0142000280 [3] ht…
+1 for GTD, too
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#14I love to code at 3am but I was always tired with a full day of work to do that. What worked for me was to change my sleeping schedule so that I was the most focused, alert, and hungry. I go to bed at 9pm and wake up at 3am. This gives my side projects the most focused, well rested me. The funny thing is, I'm so excited to get up and code I get up without an alarm clock.
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#15Let me turn this question around a little. I'm a manager of a software development department. I have a coder who works best at night. I got upset with him for falling asleep at his desk. Not once, but many times. He tells me "I'm up all night working". To make this situation worse, our office is very over-crowded. It's hard for me to see how anyone gets anything done. But, we have meetings the devs need to be at. Pr…
In the scenario you describe, you have set of inconsistent requirements:
1. A developer that works strange hours
2. A need to get everybody in the same room
3. The "perception problem", a.k.a. snide remarks from the peanut gallery.
The first thing to do is to be a good technical manager and admit that you do, in fact, have inconsistent requirements. Something on this list must change. You cannot satisfy all three.
The next thing to look at is what is the best (or least-bad) requirement to change.
The simplest option is to fire the developer. I don't actually recommend that, but it is simple. Embedded in that statement is the implicit assumption that you will never again hire someone who works odd hours, and in my admittedly biased experience, people who work odd hours tend to be good, so there is a hidden cost to that scenario.
A more complicated option is to figure out how to eliminate or reduce your dependence on in-person meetings. For example, having discussions via email or on GitHub. I would probably argue that if your software developers are having meetings more than 0.5 times per day, they are not being productive to start with, so there are reasons independent of this particular developer to study that problem. For more on this strategy, I would recommend looking at the GitHub model. [1]
Finally, to address the third issue, you need a performance review mechanism that isn't attendance-based. For example, consider mechanisms that are feature-based or deliverable-based. Attendance-based performance is bad for a lot of reasons independent of any particular developer's situation--it motivates working hard instead of working smart, and so on.
The thing to see here is that you're either going to have to change the environment or the developers you place in it. Personally, I would recommend the former, but in any case, something's going to move. The advantage of changing something now is that you get to decide what to change. If you let the situation run its course, it will change in a manner and at a time that will be less convenient.
[1] http://zachholman.com/posts/how-github-works-asynchronous/
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#16Tell me about it. I'm 30 and I'm shocked at how drastically this has changed. I recently slept for 26 hours at the back end of a largely sleepless week. Twenty. Six. Hours.
Needless to say, I'm taking it a bit easier on myself since then.
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#17Let me turn this question around a little. I'm a manager of a software development department. I have a coder who works best at night. I got upset with him for falling asleep at his desk. Not once, but many times. He tells me "I'm up all night working". To make this situation worse, our office is very over-crowded. It's hard for me to see how anyone gets anything done. But, we have meetings the devs need to be at. Pr…
Is he a very productive developer? One of your best?
[1] http://www.csd.uwo.ca/staff/magi/personal/humour/Computer_Au...?
EDIT: joke aside, I am thankful to the grandparent for posting the question. I have the same question, with the difference that I also know the other side. So I am following the answers closely.
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#18- Less is more. Getting burnt out leads to bad code and less productivity. Avoid the situation by giving realistic expectations. Ask for additional help if needed. It's important to know when to say no and provide alternative solutions. Saying yes all the time is actually unprofessional.
- You need sleep. That's when your brain is actually making connections to different ideas you thought about during the day.
- Over working can and most likely will lead to rsi (repetitive strain injury). Don't be stupid. Make sure you stretch and take brakes. I've been coding for 16 years and last two have been he'll because of it. Actually I'm considering changing careers or taking a while off. I love computing so this is a very hard choice.
- Are you guys doing incremental changes and deploying them ? Lean development? Quick iteration cycles lead to spending time developing the right thing and less wasted time on the wrong thing. Plus, people are much happier when they get what they want in pieces.
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#19> The problem is that if in my early twenties I used to be able to recover over only a few hours sleep for the next day, it seems like it is impossible for me right now (early 30's). Tell me about it. I'm 30 and I'm shocked at how drastically this has changed. I recently slept for 26 hours at the back end of a largely sleepless week. Twenty. Six. Hours. Needless to say, I'm taking it a bit easier on myself since then…
Re: Ask HN: Tricks to integrate late coding session in current workflow?
#20I haven't reached perfection, but I've made incremental progress. Here's what I have so far.
0. Don't work at night. For me, this is a practice in necessity, when my son is born I want to spend a lot of time with him. So i've been practicing on losing that time. The benefit is it's really made me focus on packing as much stuff into my "productive" hours as possible.
1. Stop drinking caffeine at night. Sleep is important.
2. Stop drinking alcohol on weekdays. Mornings are important.
3. Eat a balanced diet (i used to live off easy to obtain tasty food) Nothing is free, that means if you save time by eating fast food you'll pay somewhere else. usually your health. Being unhealthly leads to feeling lethargic. That's unproductive.
4. Before i get to work in the morning I have a realistic to do list of what I want to accomplish. On the drive home I re-evaluate how realistic it was. Since time is important, I want to maximize the return on investment for each minute. I make that decision in the morning, and I stick to it as much as is possible. Just like investing, you need to have a strategy, and you need to stick with it. Don't throw good money after bad though.
5. I keep a detailed log of what i'm doing as i'm doing it. This solves two problems, first it let's me pick up where I left off after distractions come, and two it provides a good way to remember things.
6. Nip things in the butt early. I used to say "this item is a low priority, i'll let it go, and do it later". But when it comes up later, even if it's not a big deal, it means someone is going to interrupt you. That makes it more expensive. The cost of that issue is now + + +