The Sample Programs Repos Are Ready for Hacktoberfest 2020

The Sample Programs Repos Are Ready for Hacktoberfest 2020 Featured Image

This year, I decided to prepare for Hacktoberfest a bit early. In other words, you could say that the Sample Programs repositories are ready to go for Hacktoberfest 2020.

Table of Contents

What Is the Sample Programs Repo?

For the uninitiated, the Sample Programs repo is a collection of code snippets in as many programming languages as possible. This was a project I kicked off in early 2017, and I’ve largely benefited from the effort of folks during the previous Hacktoberfests to grow the collection to its current size:

  • 468 code snippets
  • 284 forks
  • 260 stars
  • 120 programming languages
  • 30 projects
  • 21 test suites

A lot of folks have been justifiably skeptical of this collection over the years. After all, when something like Rosetta Code already exists, what’s the point in creating a clone?

In the past, my argument revolved around two things. First, it’s okay for similar things to exist in the world because they cater to different individuals. Second, since my project is a lot smaller, it leaves a lot of room for community-driven growth.

That second point is what prompted a lot of change in the repo over the years. For example, many of the code snippets now have documentation in the form of a blog article. This is not the case with Rosetta Code. Likewise, many of the code snippets are tested based on a rigorous set of project standards. I assume Rosetta Code does this, but I’m not sure.

That said, regardless of if you appreciate my argument, I believe a lot of folks have and will continue to get a lot of value out of this collection. In the next section, we’ll talk about how the repo has been prepared for Hacktoberfest 2020.

How Has the Sample Programs Repos Prepared for Hacktoberfest 2020?

If there’s anything you take away from this update, it should be that the Sample Programs repo is now a set of repos. One of the things that had been bothering me is just how unwieldy the repo had grown in the past couple years. At one point, we were storing everything in it from articles to test code to wiki generation code.

Now, I’ve taken the time to pull this repo apart, so it’s a bit easier to manage:

To do this, I had to move the docs folder of the Sample Programs repo into its own repo. Then, I moved all the article related issues to the new repo. In addition, I updated the contribution docs and the main README, so everything is a bit more streamlined.

As the maintainer, I feel like the biggest benefit will be project management. Now, when someone wants to add a code snippet, I just have to point them to the projects pageOpens in a new tab. of the website.

In addition, another huge benefit of this will be build times for the website. Previously, if we made a change to the website, we’d have to wait for all the code snippets to be validated first. This was a pain, and it completely slowed down the pipeline. Now with the articles separated out, we can make changes to the website much quicker.

Hopefully, these changes will encourage folks like you to begin helping out!

How Can I Help Out?

By the time this article is published, we’ll have about 10 days until Hacktoberfest 2020 officially begins. My request in that time is that you look over the list of currently supported projectsOpens in a new tab. or jump straight into the list of open issues (e.g. Sample ProgramsOpens in a new tab. or WebsiteOpens in a new tab.). From there, you have basically four options:

All four options help grow the repo, but keep in mind that some options will increase the complexity of the repo. For example, adding a project opens the door for 120+ more code snippets. That said, for people who want to write code snippets for some of the more popular languages like Python and JavaScript, coming up with your own project is pretty much your only option. Likewise, adding tests will slow down build times.

Alternatively, you’re always welcome to write documentation for existing articles. This is something that has really not gotten the support it deserves. As a result, I plan to incentivize it a bit by sharing your article on my website if you’d like.

Beyond that, I’m open to anything. One of the best things about having community-driven project like this is I’ve always been able to watch the project grow and change over time. This year I expect this trend to continue!

Best of Luck!

If you haven’t had a chance to take part in Hacktoberfest up until this year, that’s okay! I personally haven’t contributed to a repo other than my own. Perhaps you might try starting your own project as well.

That said, if you do decide to help out with the Sample Programs collection, I’d really appreciate it. Otherwise, no hard feelings!

While you’re waiting for Hacktoberfest 2020 to kick off, why not check out some of my other articles. For instance, I recently started a Python series for folks looking to learn the language. Here are a few to get you started:

Likewise, here are some Python resources from the folks at Amazon (ad):

Once again, thanks for taking some time to stop by! I appreciate it.

Sample Programs Repo News (19 Articles)—Series Navigation

Everyone once in awhile, I like to update y’all on what’s going on in the Sample Programs repo. At this point, I’ve written quite a few updates, so I figured it might be helpful to group them as a series.

Jeremy Grifski

Jeremy grew up in a small town where he enjoyed playing soccer and video games, practicing taekwondo, and trading Pokémon cards. Once out of the nest, he pursued a Bachelors in Computer Engineering with a minor in Game Design. After college, he spent about two years writing software for a major engineering company. Then, he earned a master's in Computer Science and Engineering. Today, he pursues a PhD in Engineering Education in order to ultimately land a teaching gig. In his spare time, Jeremy enjoys spending time with his wife and kid, playing Overwatch 2, Lethal Company, and Baldur's Gate 3, reading manga, watching Penguins hockey, and traveling the world.

Recent Posts