Sign in
Log inSign up
Developer Diaries: Week 7

Developer Diaries: Week 7

Finding my zone and developing "clever" solutions

Brittany Joiner's photo
Brittany Joiner
·Aug 26, 2021·

5 min read

Sending my post a bit early this week because tomorrow is an Elastic Shut It Down day (basically random vacation days we're given just because! it's awesome. Oh and we are hiring if you want to come work with me .)

Will be AFK tomorrow as I'm doing an orientation for a cat shelter I'm volunteering at, and I'm also officially changing my address on my license since my move! So let's get to it.

Working in bursts / finding my zone

I think one of the biggest revelations I had this week was that I can't easily turn "on" my focus. I can't decide if it's something I should lean in to, or try to fix, but I have very much found myself in a zone at certain times and I don't want to pull myself away.

Sometimes this zone hits me at like 7pm, when I get an idea for how to fix something, and I just want to click away until I knock it out.

But then I come to my desk the next morning and I just can't get my coffee to kick in fast enough. I'm unable to turn on that focus and actually work on something. Or I'll work on something for an hour, and then need a 30 minute break to walk around, have a snack, befriend my stray cat, or install a new doorbell.

It's like I'm working in bursts, rather than just sitting at my desk for 8 hours a day. And it feels a little weird, but I don't think it's ineffective because I've nearly completed all my tasks for this sprint that I thought would take me two weeks - I've done in less than one!

Is this normal for developers? I started to do some research and see what the internet said.

As a developer

I don't get paid to type
I don't get paid to write code
I do get paid to solve problems.

And solving problems works far better if I think before I do.

from Andreas on this StackExchange post

My first software manager said that the most you can get out of people is five hours of real work a day. She also said that programmers need to learn to tell when the most productive thing they can do is go look out the window.

from AnimalMuppet on YCombinator forums

Personally, I work every day. When I am tired and not productive, I work less. When I feel good, I work much. The minimum is usually 6 hours. Maximum is usually 12 -14 hours. At weekends, it happens it's just 2 hours a day.

from grobmeier on YCombinator forums

Turns out, what the most productive 10% of our users have in common is their ability to take effective breaks. Specifically, the most productive people work for 52 minutes at a time, then break for 17 minutes before getting back to it (similar to the Pomodoro Method—more on that here).

The employees with the highest productivity ratings, in fact, don't even work eight-hour days. Turns out, the secret to retaining the highest level of productivity over the span of a workday is not working longer—but working smarter with frequent breaks.

from the Muse

Also, when chatting with one of my fellow devs a couple weeks ago, he mentioned that he regularly gets up and walks around and takes breaks and that taking breaks is key.

So I guess we're not lazy and weird, our brains - just like batteries - need to be recharged after use :) And unlike our iPhones, we can't just go all day and recharge overnight.

I'm clever!!

I don't often brag, but I'm learning you have to celebrate your accomplishments. And there's a lot of days where you don't know what you're doing, and feel like you know nothing, but sometimes you discover you do know something and you solve a problem and that. needs. to. be. celebrated! 🎉

I had a moment like that this week. I was trying to figure out how to be overly prepared for an edge case that was unlikely to happen, but it bothered me what would happen if a user got to that state in the app. Essentially, a variable would not be shown, and there would just be a set of "" that showed up and it looked weird to me.

After a bit of thinking through it, I realized I could make those " only appear if the variable was defined by setting a quote variable and if the other variable was defined, then quote would be ", otherwise it would be nothing!

Here's the code if you're curious.

<EuiI18n
    token="pageTitle.search"
    default="Search results {quote}{searchBarTerm}{quote} | Elastic Support"
    values={{
    quote: this.props.searchBarTerm ? '"' : '',
    searchBarTerm: this.props.searchBarTerm,
    }}
>
    {(title: string) => <UseTitle title={title} />}
</EuiI18n>

I felt pretty smart about it, and my fellow (significantly more senior) frontend dev said....

image.png

So yeah, this pretty much made my week.

Meet my new cat friend!

Okay lastly, say hello to Artie (short for Artimus). They're a stray cat in my neighborhood that I'm trying to befriend, so I've named it and I leave food and water out for it. Trying to figure out how to help it out this weekend with the hurricane on it's way to southern Lousiana. Any ideas? :)

Image from iOS (5).jpg

Image from iOS (4).jpg

👋 See y'all next week!