Recently I was watching an episode of Top Chef, from Season 1. Yep, All the way back. In fact it may have been episode one. Anyway, watch this scene, where a contestant was given an opportunity to work for a world renown chef for 30 minutes (or until the chef decided they weren’t cutting it). This contestant was asked to taste the sauce he was making, dipped his finger in to taste, and was immediately shown the door. It lead to this awkwardly tense moment.

Watch the video here.

Coding in someone else’s kitchen

Software development, at it’s core, is a lot like cooking. Everyone has their own take on how something should be done. It can even be difficult repeating EXACTLY what we did last time. Just because you make one great cake, doesn’t mean the next will turn out perfect. In software, these are bugs…in cooking, we’ll refrain from calling them ‘bugs’ and just refer to them as ‘variances’ ;).

If you were to walk into the kitchen of another chef/cook, at the end of the day, it’s their domain. When producing end results, the customer’s don’t know it was you who produced the dish, they think it’s the head chef, so their reputation is on the line. The same goes for contributing to open source software.

Respect the chef

In the commit history of the project, sure, your name shows. When it comes to the larger release notes, the primary developer or team, puts their name on the overall project. That means your code represents them. With that in mind, here’s five things to remember when you submit code to someone else’s project:

1. Coding standards are not universal

This is a hotbed of controversy in development. Spaces vs. Tabs. Camel Case vs. Snake Case. 2 vs. 4. I could go on, but you get the picture. The only thing that matters when contributing, is that you follow the projects defined standards. If they ask you to update a change to match, please oblige. It’s a matter of consistency.

…but,

If the project doesn’t have a standard, suggest they implement one and use a .editorconfig file.

2. Suggestions are not personal

Sometimes, when you work really hard on a set of changes, it’s hard not to take suggestions personal. You feel like you’ve done a great job, thought of all the cases, and even double checked it…but when the project lead comes back and suggests a few things, it can take the wind from your contribution sales. Don’t let it, at the end of the day they are more intimate with the code than most people, so their suggestions may be taking other issues into consideration.

…but,

As always though, if you have a valid case for your changes, explain it in a detailed and non-emotional response for the best reception.

3. Pull Requests can sit…for a while

This is more specific to GitHub but for any requested changes, keep in mind there is more than just your change queued in the pipe. At one point on Easy Digital Downloads we had over 25 pull requests waiting for review. To be honest, it’s on purpose. Not that we keep things waiting, but that we set aside a specific time of our week to go through open pull requests to review them. If we reviewed everyone as they came in, we’d never get anything done. There’s a mental state to be in when doing code reviews, to allow for maximum quality.

…but,

If you think it’s been excessively long…just ping them on the issue/ticket. See if they need anything else.

4. Don’t over-extend yourself

One of the most frequent issues, is absentee contributors. It’s ok, as a repo owner, we understand you are doing this in your own time, and usually for free. We are fine with it, and totally get it. Sometimes the status of an issue or change can be lost though as we wait for a commit/change or comments/updates. If you feel you are overextended and won’t get to something in a timely manor, just let them know in a comment with your timeframe, or if you need to pass along the work to someone else. It helps stop the ‘Where are we at with this?’ question.

…but,

There’s not really an alternative here, it’s about the owner respecting your time and you respecting their timelines. Work it out, play nice and it’ll be ok.

5. Focus on your area of expertise

We all have our own areas of proficiency. When finding projects to contribute to, find areas you can assist where you can provide the most impact. If you are a great JavaScript developer, go look through the front end files and see where you can offer improvements to the performance or reusability. Sometimes they may not always agree with your changes, and thats when we have to go back to #2. If you can offer yourself as a Subject Matter Expert (SME), work with the repo owner to help own those issues, if you have the time (See #4).

…but,

If the project already has someone with your expertise, work with them to help review each others work. Unchecked work is dangerous, and if someone of a high skill level is being reviewed by someone with less skill, things will get missed. Two high level developers working in tandem can be a really powerful thing.

Go Fourth and Contribute!

That’s about it…go find somewhere to contribute! I’d never live it down if I didn’t say Easy Digital Downloads is a great place to start.

Cheers!

Posted by Chris Klosowski

Chris Klosowski is the Director of Technology at Sandhills Development, LLC, creators of fine WordPress plugins, and ecommerce solutions.

86 Comments

  1. “We all have our own areas of proficiency. When finding projects to contribute to, find areas you can assist where you can provide the most impact. If you are a great JavaScript developer, go look through the front end files and see where you can offer improvements to the performance or reusability.”

    That’s everything to me.

    Reply

  2. @sean

    It really is. One of the most amazing things I’ve noticed since joining the EDD team is the code review process we instituted. Not only do I get to share my knowledge, but I get to learn from others as well. Such a great two-way street.

    Reply

  3. […] you are new to contributing to an open source project, it can be a bit intimidating, but I wrote a few tips on some things to keep in […]

    Reply

  4. Amazing blog! Do you have any tips and hints for aspiring
    writers? I’m hoping to start my own blog soon but I’m a little lost on everything.
    Would you recommend starting with a free platform like WordPress or go for a paid option? There are so many choices out there
    that I’m completely confused .. Any recommendations? Thanks!

    Reply

  5. Hi there to all, the contents present at this website are in fact awesome for people experience, well, keep up the nice work fellows.

    Reply

  6. I am regular reader, how are you everybody? This post posted at this website
    is in fact fastidious.

    Reply

  7. cialis 100mg cost – buy online cialis tadalafil tablets in uk

    Reply

  8. cialis viagra buy brand viagra canada krvghsf – viagra helsingborg

    Reply

  9. buy viagra without prescription? cheapest generic viagra jncyztu – generic viagra price

    Reply

  10. viagra chep viagra 100 – generic viagra au

    Reply

  11. buy doxycycline monohydrate order doxycycline – order doxycycline

    Reply

  12. zithromax for sale 500 mg generic zithromax – buy azithromycin zithromax

    Reply

  13. cost of prednisone in canada buy prednisone – india buy prednisone online

    Reply

  14. doxycycline 100mg dogs cheap doxycycline – doxycycline hyclate 100 mg cap

    Reply

  15. stromectol 3mg ivermectin for humans – ivermectin 12

    Reply

  16. buy ivermectin uk generic stromectol – ivermectin 3 mg tablet dosage

    Reply

  17. stromectol australia ivermectin for sale humans – ivermectin purchase

    Reply

  18. ivermectin buy nz stromectol ivermectin for humans – cost of ivermectin lotion

    Reply

  19. cheapest ed pills online pump for ed – buy drug online

    Reply

  20. ed cures that actually work prescription meds without the prescriptions – buy ed drugs

    Reply

  21. lipitor india generic atorvastatin – lipitor india generic

    Reply

  22. plaquenil 400 mg hydroxychloroquine – buy plaquenil in india

    Reply

  23. plaquenil 100mg price plaquenil brand – hydroxychloroquine 300 mg tablet

    Reply

  24. ivermectin cream ivermectin tablets for humans for sale – ivermectin cream canada cost

    Reply

  25. lexapro pills for sale buy lexapro without prescription – lexapro coupon

    Reply

  26. lipitor canada pharmacy lipitor generic – lipitor 40 mg generic price

    Reply

  27. clomid for sale generic clomid – where to buy clomid

    Reply

  28. Today, I went to the beach with my kids. I found a sea shell and gave it to my 4 year old daughter and said “You can hear the ocean if you put this to your ear.” She
    placed the shell to her ear and screamed.
    There was a hermit crab inside and it pinched her
    ear. She never wants to go back! LoL I know this is totally off topic but I had to tell someone!

    Reply

  29. clomid coupon clomid – purchase clomid online

    Reply

  30. clomid coupons clomid for sale – buy clomid online

    Reply

  31. generic clomiphene clomid – clomid online purchase

    Reply

  32. clomid coupons clomid – clomiphene tablets

    Reply

  33. order clomid buy clomid – cost of clomid

    Reply

  34. Doxycycline Monohydrate 100mg Buy Now

    Reply

  35. Hey! I know this is somewhat off topic but I was wondering which blog platform are you using
    for this website? I’m getting fed up of WordPress because I’ve
    had problems with hackers and I’m looking at options for another
    platform. I would be fantastic if you could point
    me in the direction of a good platform.

    Reply

  36. viagra online usa order viagra online – price of viagra

    Reply

  37. when will viagra be generic sildenafil – how much is viagra

    Reply

  38. buy cheap clomid clomid – clomiphene online

    Reply

  39. stromectol 3 mg tablets price ivermectin for sale – stromectol 0.5 mg

    Reply

  40. Do you mind if I quote a couple of your articles as long as I provide credit
    and sources back to your weblog? My blog is in the very same area of interest as yours and my visitors would
    truly benefit from a lot of the information you present here.
    Please let me know if this alright with you. Many thanks!

    Reply

  41. ivermectin ebay buy ivermectin pills – stromectol without prescription

    Reply

  42. 80 mg prednisone daily prednisone generic – prednisone for sale

    Reply

  43. generic zithromax 500mg india zithromax antibiotic – zithromax online paypal

    Reply

  44. Hi there! This article couldn’t be written any better!
    Looking through this post reminds me of my previous roommate!

    He always kept preaching about this. I am going to forward
    this article to him. Pretty sure he’ll have a
    good read. Many thanks for sharing!

    Reply

  45. cost of finasteride propecia – propecia no prescription

    Reply

  46. ivermectin rx ivermectin tablets – stromectol australia

    Reply

  47. I am really loving the theme/design of your website. Do you ever
    run into any browser compatibility issues? A handful of my
    blog readers have complained about my website not operating
    correctly in Explorer but looks great in Firefox. Do you have any advice to help fix this problem?

    Reply

  48. ivermectin generic cream ivermectin for humans where to buy – ivermectin 3mg

    Reply

  49. With havin so much content do you ever run into any problems of plagorism or copyright infringement?
    My blog has a lot of unique content I’ve either created myself or outsourced but it appears
    a lot of it is popping it up all over the internet without my authorization. Do you know any ways to help prevent content from being ripped off?
    I’d certainly appreciate it.

    Reply

  50. purchase finasteride without a prescription propecia for sale – purchase propecia no prescription

    Reply

  51. propecia finasteride propecia – propecia costs

    Reply

  52. If you would like to obtain a great deal from this article
    then you have to apply such methods to your won blog.

    Reply

  53. buy real viagra online viagra over the counter – where can i buy viagra over the counter

    Reply

  54. cialis generic overnite how can i get cialis in australia – online cialis florida delivery

    Reply

  55. viagra from canada buying viagra online – buy viagra online usa

    Reply

  56. when will viagra be generic buying viagra online – viagra without a doctor prescription

    Reply

  57. prescription drugs online without doctor ed pills from canada – erectile dysfunction drug

    Reply

  58. best prices on cialis online cialis discounts – cialis online american express

    Reply

  59. herbal ed india pharmacy – natural cures for ed

    Reply

  60. generic cialis tadalafil 20mg cialis funny – cheapest generic cialis

    Reply

  61. The very crux of your writing while sounding reasonable initially, did not really settle properly with me after some time. Someplace within the paragraphs you actually managed to make me a believer but only for a while. I nevertheless have a problem with your leaps in assumptions and you would do nicely to help fill in those breaks. In the event you actually can accomplish that, I would definitely be amazed.

    Reply

  62. Hello there, just became aware of your blog through Google, and found that it’s really informative.
    I’m gonna watch out for brussels. I will be grateful if you continue
    this in future. A lot of people will be benefited from
    your writing. Cheers! asmr https://app.gumroad.com/asmr2021/p/best-asmr-online asmr

    Reply

  63. ivermectin 50ml buy ivermectin online – ivermectin price comparison

    Reply

  64. It’s arduous to seek out knowledgeable people on this topic, however you sound like you understand what you’re speaking about! Thanks

    Reply

  65. Thanks in support of sharing such a good thinking, post
    is pleasant, thats why i have read it completely scoliosis surgery https://0401mm.tumblr.com/ scoliosis surgery

    Reply

  66. Hello, i think that i saw you visited my website so i came to “return the favor”.I’m trying to find things to enhance my site!I suppose its
    ok to use some of your ideas!! cheap flights http://1704milesapart.tumblr.com/ cheap flights

    Reply

  67. We’re a group of volunteers and opening a new scheme in our community.
    Your site offered us with valuable information to work on. You’ve done an impressive
    job and our entire community will be thankful to you. scoliosis surgery https://coub.com/stories/962966-scoliosis-surgery scoliosis surgery

    Reply

  68. ivermectin cost uk ivermectin for sale – ivermectin 1 cream generic

    Reply

  69. ivermectin uk coronavirus ivermectin brand – ivermectin pill cost

    Reply

  70. It’s an amazing piece of writing in support of all the web
    viewers; they will get advantage from it I am sure. quest bars https://www.iherb.com/search?kw=quest%20bars quest bars

    Reply

  71. I don’t even know the way I ended up here, however I assumed this post was great. I do not know who you are but certainly you are going to a famous blogger in case you aren’t already 😉 Cheers!

    Reply

  72. Now I am ready to do my breakfast, later than having my breakfast coming yet again to read more news.

    ps4 https://bit.ly/3nkdKIi ps4

    Reply

  73. Good website! I truly love how it is easy on my eyes and the data are well written. I’m wondering how I might be notified when a new post has been made. I’ve subscribed to your feed which must do the trick! Have a nice day!

    Reply

  74. ivermectin 5 buy ivermectin – ivermectin topical

    Reply

  75. natural treatment for ed best drugs for ed – cheap pills online

    Reply

  76. erectial dysfunction prescription drugs online without doctor – male enhancement

    Reply

Leave a reply

Your email address will not be published. Required fields are marked *