🦥 So You Want to Do Open Source?

Welcome to this week’s Sloth Bytes.

I hope you had a great week!



Flex your product muscles

Product for Engineers is PostHog's newsletter helping engineers improve their product skills. Subscribe for free to get curated advice on building great products, lessons (and mistakes) from PostHog, and deep dives on the tactics of top startups.

They have four-inch long fingers

Although they kinda look like claws, those long grabby bits are actually their finger bones sticking out from the sloth’s paw. The bone is covered in a thin sheath of keratin, the same stuff our fingernails and hair are made out of.

These finger bones give the sloths an acute sense of touch, which probably helps since their eyesight is so poor.

So You Want to Do Open Source?

What the Heck is Open Source?

Open source software is like a giant collaborative project where anyone and everyone can look at the code, suggest changes, and help make it better.

It's all about transparency, community, and sharing.

Or you know… source code that’s OPEN.

Why Should You Care About Open Source? 🤔

Because it's awesome (and free), but here’s some actual reasons:

  • Learn New Things: Jump into real-world projects and see how the pros do it.

  • Boost Your Skills: Improve your coding, collaboration, and problem-solving abilities.

  • Build Your Portfolio: Show off your contributions to potential employers.

  • Join a Community: Connect with like-minded folks from all over the globe.

  • Give Back: Improve the tools and apps you use every day.

Bro I don’t know how to code

No worries! You don't need to be Linus Torvalds to contribute. Open source is for everyone—whether you're just starting out or have years of experience.

Ways You Can Contribute

  • Fix Typos: Yes it’s that simple, even correcting a misspelled word helps!

  • Improve Documentation: Nobody likes writing documentation, so you can take one for the team.

  • Report Bugs: Found an issue? Let the maintainers know.

  • Suggest Features: Have an idea to make the project better? Share it!

  • Write Code: Tackle issues or add new features.

How to Get Started 🚀

1. Find a Project You Love

  • Think about the tools or apps you use daily.

  • Browse platforms like GitHub

2. Check Out the Contribution Guidelines

  • Every project has its own rules. Look for a CONTRIBUTING.md file.

  • If they don’t have one, check out their README.md file

3. Pick an Issue

  • Look for labels like good first issue or help wanted.

  • Start small to get the hang of things.

4. Set Up Your Environment

  • Fork the repository (it's like making your own copy).

  • Clone it to your machine and set up any necessary tools.

5. Make Your Changes

  • Create a new branch for your work.

  • Test your changes to make sure everything works.

6. Submit a Pull Request (PR)

  • Describe what you've done and why.

  • Be open to feedback—it's all part of the process!

Tips and Tricks 📝

  • Communicate Clearly: If you're unsure about something, ask! The community is there to help.

  • Be Respectful: Remember, everyone is volunteering their time.

  • Stay Patient: Maintainers might take time to review your PR.

  • Keep Learning: Every contribution is a learning opportunity.

But What If I break the code???

Relax! Everyone starts somewhere. The open source community is generally friendly and supportive. If you mess up, there are folks ready to help you get back on track. Plus most projects go through a lot of testing to make sure it works

Thank you to everyone who submitted 😃 

There was so many submissions this time… sorry if you’re not listed here (I still love you)

I got a comment to make the challenges a bit more simple, so I’ll make it easy this week at least 😄. If it’s too simple try a creative way to solve it.

How Much is True?

Create a function which returns the number of true values there are in an array.

Examples

countTrue([true, false, false, true, false]) ➞ 2

countTrue([false, false, false, false]) ➞ 0

countTrue([]) ➞ 0

Notes

  • Return 0 if given an empty array.

  • All array items are of the type bool (true or false).

How To Submit Answers

Reply with

  • A link to your solution (github, twitter, personal blog, portfolio, replit, etc)

  • or if you’re on the web version leave a comment!

I underestimated this new video

Yeah uhhh I want to make a video explaining how google search work and coding a version of it, but uhhhhhh IT’S VERY COMPLICATED.

I'm researching search engines and try to find fun ways to explain it for a video.

That’s all from me!

Have a great week, be safe, make good choices, and have fun coding.

See you all next week.

Reply

or to participate.