Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

In your opinion, what are some daily habits that made you a better developer. #690

Closed
AchoArnold opened this issue May 25, 2015 · 14 comments

Comments

@AchoArnold
Copy link

I'm a young developer from Cameroon and I'm trying to adapt myself for personal growth. What are some tips?

@AchoArnold AchoArnold changed the title In your opinion, what are some daily habits that make one a better developer. In your opinion, what are some daily habits that made you a better developer. May 25, 2015
@holman
Copy link
Owner

holman commented May 25, 2015

Hi Acho!

So, I'm by no means a great developer, but a few things come to mind as I read this today:

  • Sometimes I have problems with motivation — I think that's kind of a human trait, from time to time. Even if you're working on something you really love, sometimes getting started can be a little hard. Usually I get hit by this if I know I have a lot of gnarly code ahead of me that day... those are the days where I read reddit a little bit too long before starting into work. The best advice I have for that is to always leave your code unfinished the day before. That way I always know I can come back to a small problem that may only require three minutes to fix a test, or write a new method, or whatever the case is. Once I've been doing code for five or ten minutes, I tend to quickly become sucked into the problem and it's much easier to jump into the harder code at that point. Same rationale for stretching before doing exercise, basically.
  • Always get involved in support threads and tweets by those affected by the code that you write. You don't have to do it every day or even every week (that is, if you have a support team devoted to it), but check in periodically to see real people using your code. Huge, huge benefit.
  • I'm not sure if this is great advice or harmful advice (ha), but personally I don't get too worried about how I'm building something. All I really care about is the product. So when I'm asked about TDD/BDD/pair programming/whatever the case is, usually my answer is "it depends". For example, right now I'm working on a greenfield app and haven't stopped to write any tests. Sure, it's going to suck in a few weeks when I decide to go back and write them back in, but it's a pretty good tradeoff for me right now. I'm in the exploration phase and want to fuck with a lot of different approaches really quickly. Making code safe can come later, and at that point I'll write tests in tandem (or, depending on the problem, write the tests first).
  • Along those lines, be comfortable with your work environment, too. And it's important to note that sometimes this can change. Seven years ago I was super productive working at home. Two or three years ago I started realizing that I became super productive in an office setting. About a year ago I realized that working in a noisy office started to really grind my gears, so now I've been pretty happy working in cafes and home again. For awhile I tried to fight it, assuming that "I work best" in a certain locale, but now I've come to realize that it changes a lot for me over time, and I'm cool with that.
  • Talk to people in your industry in informal settings, either in-person or over video chat or even chat. It's always great to know more people, and you'll learn super interesting stories from the problems others have faced. Also: find a few mentors, the ones that will still love to grab lunch with you seven years from now and talk shop.
  • Write for yourself a lot. Keep a journal, and talk through hard decisions and discussions with yourself. By arguing a position — even if it's just to yourself — you're forcing yourself to think about the other side of the argument, too, which can make you rethink your position, or make you better suited to discussing with people in real-life later.
  • You're already asking yourself great questions. Keep asking questions of yourself. I learned the least in my career over the last year and a half, and the recent realization of that really bums me out. If you're not learning, you're treading water. It's easy to go along with the flow after awhile, but unless you're literally taking time out ever few months to ask yourself am I making progress?, it can be easy to overlook the question completely, at least for me.

Hope this helps some!

@holman holman closed this as completed May 25, 2015
@AchoArnold
Copy link
Author

Thanks much 👍

@BlueHatbRit
Copy link

👍 great answers! I'm in a similar boat to @najela and this kind of advice is always really nice to take in.

@reggi
Copy link

reggi commented May 26, 2015

Found this on hacker news and I think this is really helpful. Thanks @holman.

@jonscottclark
Copy link

+1 for keeping a journal. I've done it for a few years now, while I'm working, or researching, or learning new things. I keep everything in Google Drive so it's searchable; one document per day, dated and sorted into folders for each month. I write down problems that I encountered, what I did to solve them, my frustrations, and my achievements. It's a convenient way to transfer all the stuff that's happening in my head to a place I can get back to later.

Zach is right that when you begin to put an opinion or a hypothesis into words, the decisions you make when phrasing it gets you thinking about the problem from different angles. It happens when you are about to submit a question to StackOverflow, or ask a whole channel full of people on IRC for help. Usually in the process of writing down your question, your brain kicks into a different gear and you might end up figuring out what you were missing.

@ahmgeek
Copy link

ahmgeek commented May 29, 2015

👍

@holman
Copy link
Owner

holman commented May 29, 2015

It happens when you are about to submit a question to StackOverflow, or ask a whole channel full of people on IRC for help. Usually in the process of writing down your question, your brain kicks into a different gear and you might end up figuring out what you were missing.

Basically a solo way to do rubber duck debugging (without looking crazy).

@jkowens
Copy link

jkowens commented Jun 1, 2015

👍

@ali
Copy link

ali commented Jun 2, 2015

Keeping a journal. 👍👍👍

I keep a pocket notebook and a pen to write small notes and checklists in. I had made it a habit because I was lead organizer of a college hackathon and needed to keep on top of a lot of action items. It turned out to also be both a cathartic process and useful for recollection.

@enapupe
Copy link

enapupe commented Jun 8, 2015

It happens when you are about to submit a question to StackOverflow, or ask a whole channel full of people on IRC for help. Usually in the process of writing down your question, your brain kicks into a different gear and you might end up figuring out what you were missing.

Can't remember how many times that happened to me, I can say it was more than half of the times I was going to publish my question! So nice to know that happens with more people..

@caarlos0
Copy link

It happens when you are about to submit a question to StackOverflow, or ask a whole channel full of people on IRC for help. Usually in the process of writing down your question, your brain kicks into a different gear and you might end up figuring out what you were missing.

Over and over again I figure out my problem while writing a S.O. question.

@holman great answers, thanks!

@jglovier
Copy link

The best advice I have for that is to always leave your code unfinished the day before. That way I always know I can come back to a small problem that may only require three minutes to fix a test, or write a new method, or whatever the case is. Once I've been doing code for five or ten minutes, I tend to quickly become sucked into the problem and it's much easier to jump into the harder code at that point. Same rationale for stretching before doing exercise, basically.

This is such great advice. I struggle with the getting started at the beginning of the day thing too, partly because I'm on ET while most of my team colleagues are on PT. Sometimes I just work on a side project to get my creative muscles moving, but sometimes it's just because I hit a mental road block and am simply procrastinating solving the problem I need to solve for the day. So the idea of leaving something unfinished that I know how to solve, I just have to do so, is really helpful. ✨ ❤️ 🤘 🙇

@artivilla
Copy link

This is great! I just bought the Panic Monster sitting by my windowsill to get me motivated...http://waitbutwhy.com/2015/07/why-im-always-late.html.

photo_thumb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

13 participants