OSD600 Final Project Blog 1
Tags: opensource
Published: 2021-12-08 00:13:56

## Introduction
🔥This is a mini-series including 3 blogs that shows the process how I work on my final project in my Open-Source Development class (OSD600) at Seneca College.

📝In the first blog, I will introduce how I prepare for this project. The final project requires me to add a feature or fix a series of bugs in a huge open-source project. I choose to add a new feature to any project that interests me.

## Process
I could say it took me **a whole day** to search for a project that fits to me. I needed to find the one that more difficult than my level right now so I could level up myself. And also it is not too hard so I could have time to do research and code it.

First thing in my mind, I ran into an existing project of my school that I had a chance to make a [pull request] (https://github.com/Seneca-ICTOER/IPC144/pull/55) before. [The project] (https://github.com/Seneca-ICTOER/IPC144) is about a website of course notes of *Introduction to C Programming*. I thought that it was interesting that I can implement a useful thing for future students in my school. I filed an [issue] (https://github.com/Seneca-ICTOER/IPC144/issues/138) to say that the website only has the course contents right now, I wanted to implement more pages that contains assignments, workshops and course outline. Unfortunately, the owner told me that these contents like that would be provided to students in other way (Blackboard), not on public website anymore.

So, I scrolled down the **Explore** tab on GitHub to find interesting project. I checked for languages that I'm familiar before, which is C++. But no projects fit to me. Suddenly, a thought jumped in my head **What if I try Swift?** It may be a good idea. I took an **IOS App Development** course this semester, I just did some simple assignments but working on an open-source IOS app and implement new feature? Maybe it's worth for me to try.

Eventually, after looking at some Swift programs. I found [Brain Marks] (https://github.com/mikaelacaron/brain-marks) app. How interesting it is, it is available on App Store to be downloaded on my iPhone. For the format, it is a bit similar to the **Notes** on iPhone. For the usage, the app organizes user's saved tweets into categories.

After downloading the app on my phone and explore how it works, I decided to add a feature to the app. I would create a **Pin Feature**, which means there will be a list of categories in the app, whenever I hold-press the category and choose **pin**, it will show up on the top of the list.

I filed an [issue] (https://github.com/mikaelacaron/brain-marks/issues/101) to tell the repo's owner about my idea. She thought that it was unnecessary to implement right now but she still gave me a shot to try. 

## Conclusion
😍I'm so excited to work on a big open-source IOS app first time in my life. I don't know if I can fully develop this functionality or not but I would try my best.

💪Stay tuned and look forward to my next blog about my implementation process.

## Sources
📚Read my mini-series at:
* [OSD600 Final Project Blog 2](https://dev.to/kiennguyenchi/osd600-final-project-blog-2-i62)
* [OSD600 Final Project Blog 3](https://dev.to/kiennguyenchi/osd600-final-project-blog-3-43km)

💻Take a look at my work:
* [Filing Issue] (https://github.com/mikaelacaron/brain-marks/issues/101)
* [GitHub Repo](https://github.com/kiennguyenchi/brain-marks)