DEV Community

Cover image for 2022 in Review
Batuhan Ipci
Batuhan Ipci

Posted on

2022 in Review

Today I sat for my last final exam, which also means I am now done with all my courses at Seneca College. It feels strange to suddenly come to a stop from the crazy busy schedule I was pursuing for the last many semesters. Suddenly, I have all the time in the world to do whatever I like, but first, I must pay back my sleep debt.

2022 has been great in terms of personal growth. I learned to navigate the strange world of remote learning which at times got difficult. I also learned to work under pressure from my many programming courses and work in the open through my open-source development class. Working collaboratively on open-source projects with people I don't know made me more confident in my programming skills. Just a year ago, my GitHub profile had barely any projects uploaded, but now I have developed the muscle memory to intuitively upload all my projects in GitHub, make frequent commits, and have gotten good at navigating my way around it.

Some 2022 Accomplishments 🎉

2022_accomplishments

December open-source contributions 🚀

This month I challenged myself to work on many small issues within just 10 days. I enjoyed working for Seneca College's internal project repos, therefore, picked two of them to work on.

My two most recent open-source contributions were made for a Seneca College Internal Project. I decided to go ahead and make 2 different pull requests to this repo to challenge myself to learn new skills.

1) My Photohub 📸

Integrate `github-upload` with the rest of the working code #33

Description

github-upload.js file is currently in the root directory and is disconnected from the service.

Move the code to ./worker/functions and ensure it works when we run the scripts to boot up the backend.

The solution

This issue required me to understand how two of my other peers before me were writing the code. Through this, I was able to practice my skill in reading and understanding other people's codes and then integrating them.

Integration `github-upload` with the rest of the app #35

Fixes https://github.com/humphd/my-photohub/issues/33

As discussed in the issue, current behavior of the app is completely isolated from github-upload function using Octokit. Which was implemented at https://github.com/humphd/my-photohub/pull/11

This PR integrates the "upload images to authenticated repo using github-upload" functionality into the front-end, as it was programmatically written for client side.

Steps to reproduce

  1. First create an public repository with the desired name.

  2. Next, navigate to Settings > Developer settings > PAT > Tokens(Classic) to create a brand-new token. Ensure you have provided PAT permission to the created repository from step 1.

  3. After token is created you can start the app with npm run start and follow the rest of the steps. After you have uploaded an supported type image and click on upload, you will see raw directory within the repo you have created. It will look something like this.

2) vscode Extension for Seneca 🧩

I had no prior experience working with VS Code extensions, so I had to study some VS Code documentation before making this pull request. Making a VS code extension can get difficult if the features needed are big.

Feat: provide screen stats #11

Would be great to collect such information such as screen time per user for every course work which mainly requires working in vscode (many programming courses) to get an idea of average hours per week per course and maybe personal screen hours stats. Can check if the user is actively working and disable timer if the person has not been typing anything for more than 20 mins (tbd).

The solution

feat: initial implementation of session time counter extension #16

Resolves https://github.com/Seneca-CDOT/vscode-seneca-college/issues/11

I have added the initial implementation to measure active window time for current session for the user. You can investigate extensions/session-time-counter/src/extension.ts to see my implementation.

During the process I had such questions like;

  • What could be the conditions to measure active window time?
  • If the number of characters deleted should also be counted as written? (can be an follow up issue)

As we build this extension maybe we need to clarify these crucial questions and file corresponding issues to help with the development process.

Let me know what you think 🤩

3) Climate Action Secretariat - CleanBC Industry Fund 🏢

As I was browsing for some issues to contribute to, I came across this repo by the government of British Columbia. I liked the project and decided to make a small contribution here.

Tech Debt: Regexes for phone numbers and emails live in multiple places #1221

We have regex patterns that are duplicated across multiple files:

app/server/middleware/graphql/validateRecord.ts app/data/jsonSchemaForm/customFormats.ts

It would be nice to keep them in a single file.

The solution

Refactor and optimize regexes for phone numbers and emails #1251

Fixes https://github.com/bcgov/cas-cif/issues/1221

As mentioned in the issue, this PR resolves the existing duplicated regex and optimizes them into one single file.

Note: Currently, I am turning this into draft PR and will be updating soon.

Reflection

I am really happy with the contributions I have done over the last 3 months. I have big goals planned for 2023 to develop both personally and professionally.

Top comments (1)

Collapse
 
tuenguyen2911_67 profile image
Tue

Wow, the accomplishment list looks impressive! Good luck in 2023!