The Open Source Finale: Pt.1

the-open-source-finale:-pt.1

Hello, Blog!

If you have just stumbled upon my OSD600 series of blog posts, it has been created to document and share my learnings as I progress through my Open Source Development college course.

Lately, I have been falling behind on blogging. This post, for instance, should have gone up last week, right after I wrapped up the planning phase for our final Open Source assignment. But as they say, better late than never! Today, I’ll take you back to where I was a week ago to share how I approached the planning process, the project I chose to work on, and the personal goals I set for myself.

A bit about Release 0.4

For our final assignment, we were tasked to leverage the skills and experience we’ve built over the term to work on something meaningful to us in one way or another.

Looking for the right project

Finding the right project to work on was the toughest part of the planning stage. I spent hours browsing popular open-source repositories and reading countless articles on “best open-source projects for beginners” (half of which list projects like Linux Kernel as a great starting point for beginners). As that approach wasn’t working, I decided to focus on something fun. Something that I wanted to try for a long time but didn’t have a chance (or at least so I thought) to do.

The first idea that came to mind was exploring fun VSCode extensions. I’ve always loved quirky extensions made to bring a smile to a coder’s face right in their IDE. However, after doing some research, I discovered that most of these extensions are more like personal side projects than active open-source initiatives. Many of the repositories hadn’t been updated in over a year.

For example, I tried contributing to the repo of a VSCode extension featuring one of my favourite memes, (Incredibly In Your Face). It’s a simple but genuinely funny project with over 100k downloads on the VSCode Marketplace. I picked an issue, submitted a comment, and waited for a response. Unfortunately, I haven’t heard back since the project is no longer maintained.




Comment for

#6


arilloid avatar


arilloid
commented on

Hello @virejdasani!

I know it’s been a while since you have released the extension, but I was wondering if you are still open to accepting Pull Requests.

I’m a student just starting my Open Source journey and looking to play around with some VSCode extensions & I would love to contribute to yours as I find it genuinely funny!

With time running out, I decided to pivot again and look into the repositories my classmates worked on during Release 0.3.

And then, finally, I found the perfect project!

The project I picked

The project I chose is a game in active development created by a group with ties to KubSu, one of my country’s most renowned tech universities. It’s maintained by a close-knit community of former students, many of whom are now immigrants (essentially, people in the same boat as me). The atmosphere felt welcoming, and the project maintainer stood out as very supportive and helpful, thoroughly responding to my classmate’s comments. It feels like a community I could genuinely see myself joining if I continue to contribute.

Even the name of the community is compelling:
Move Fast and Break Things – an ultimate developer’s motto!

+ An online game, what can be more fun than that?

GitHub logo

move-fast-and-break-things
/
aibyss

🚧 UNDER DEVELOPMENT 🚧 Aibyss: code your AI to compete in a survival game

🚧 UNDER DEVELOPMENT 🚧 Aibyss: code your AI to compete in a survival game

Aibyss social image

Setup

  • install node.js
  • (on macOS only) install node-gyp: npm install -g node-gyp
  • install the dependencies: npm ci

Development server

Start the development server on http://localhost:3000:

npm run dev

Create new user

npm run create-user <username>

Running the tests

unit tests

npm run test

e2e tests

First, setup e2e tests by running npm run test:e2e:install, then run the tests with:

npm run test:e2e

Contributors guide

We follow conventional commits, name your PRs accordingly

Production

Build the application for production:

npm run build

Locally preview production build:

npm run preview

Check out the deployment documentation for more information.

So, that’s how I decided to work on AIbyss, an online competition game where players program AI bots to compete against one another.

While the project is relatively small, it offers many learning opportunities. I’m unfamiliar with most of the stack (Nuxt, Vue.js), have never worked on online games, and also haven’t tackled any frontend-related issues in my open-source journey. All this combined makes the project a great fit for my Release 0.4.

The goals I set for Release 0.4

  • Contributing to the project in a meaningful way – to achieve this, I decided to start by picking up an issue with a high priority label




feat: let the users view the rating page without having to log in

#42

This is a follow-up idea to the #37 and should be done after it is merged.

  • Getting comfortable with the tools – as mentioned, the project utilizes a lot of tools that are new to me, so I was excited to see them in action.

  • Communicating with the maintainers more actively – in this release, I wanted to engage more actively with the maintainers. Instead of waiting until my work was complete, I planned to create a draft PR early on to gather feedback and collaborate more effectively throughout the process.

Stay tuned

I’ve already picked up an issue and started working on it, so stay tuned — I’ll share my progress in an upcoming post!

Total
0
Shares
Leave a Reply

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

Previous Post
real-or-ai-generated?-you-guess-[quiz]

Real or AI-Generated? You Guess [Quiz]

Next Post
don’t-just-be-a-pmm-–-be-a-strategic-leader

Don’t just be a PMM – be a strategic leader

Related Posts