First Hackathon/Hackweek
COSC Hackweek Submissions
I have recently participated in Hackweek hosted by the COSC (CBIT Open Source Community). The tasks they assigned me improving my skills in Python, Git, open source workflows, and using developer tools.
Below is a summary of what I built and learned.
The first task I chose to do is a CLI Unit Converter as I am learing python and whanted to see if I’m able to do it.
1. CLI Unit Converter
I created a Python command-line tool that converts temperatures between Celsius and Fahrenheit using the
argparsemodule.What I did:
- Implemented two flags:
--celsiustofand--fahrentoc- Parsed command-line input to run only the selected conversion
- Used clean, modular code with a main function and conditionals
View the repository: GitHub - CLI Unit Converter.
My second one was just submitting a pull request to an open source repo hosted by them
2. First Pull Request
I contributed to an open source repository by:
- Forking the main repository
- Creating a markdown file in the submissions folder
- Describing my background, an open-source project I admire, and what I hope to learn
- Opening a pull request to submit my contribution
The third one, was to find the author of any function from a python file from the repo they gave using GitLens which is a VS code extension. I didn’t know how to do this, hence asked chatgpt for help.
3. GitLens Detective
Using the GitLens extension in VS Code, I explored a repository’s commit history to find out:
- Who authored specific functions
- When they were last modified
- Which commit added them
This taught me how GitLens can help understand code authorship and project evolution.
View the repository: GitHub - GitLens Detective.
The fourth one was an easy python code. It was to make a CLI Die using random module and mimic its rolling by adding a time delay.
4. CLI Dice Roller
Using Python, I built a basic command-line dice roller that simulates a real dice roll.
- Uses the
randommodule to generate values from 1 to 6- Adds a delay with
time.sleep()for a more realistic rolling effect- Loops the roll until the user decides to stop
This hands-on scripting helped reinforce concepts like user input, loops, randomness, and CLI interaction.
It’s a simple but fun way to practice Python basics and improve CLI-based user experience.
Reflection
These tasks helped me get comfortable with practical development workflows:
- Building and running command-line tools
- Understanding version control and authorship with GitLens
- Following open source contribution protocols
Doing these tasks felt exciting and intresting. This excitement motivated me a lot to keep contributing and learning through real-world challenges like this.
After conclusion of this Hackweek, I have placed at 98th place out of over 500 members.
