Skip to main content

DPS 909 - Release 0.4 - Quick Weekly Recap

Last week, I talked about my external contribution and the trouble I had with setup. This week, I performed my contribution to our internal project: Seneca Telescope. I wanted to work on an aspect of the project that I had not dabbled in before, so I chose to restructure some code in order to create fixtures. So here's a quick recap of the work I did for this week's release 0.4 contribution.

Internal Contribution - Adding Fixtures to Telescope

In this context, fixtures refers to elements in a software project that are used to create a reproducible testing environment. In the case of project Telescope, there are certain components of the web app that parse RSS and Atom feed URLs in order to derive the contents of a blog. In order to test these components, we created a "dummy" blog account that produced a very specific feed output when parsed. Since we know what output to anticipate, we can use the dummy blog to test the various parsing components of Telescope. You can, in fact, visit the dummy blog here - it doesn't have very much on it, which is kind of the point. The code that is used to parse the dummy blog URL, as well as the expected contents of the parsed feed, are repeated and used in many places of our test suite. User ragnarokatz of our Telescope project suggested that we take these repeatable portions of code and incorporate them into a separate fixtures module, which can then be shared and used across any future tests that require them. The idea is that, on top of this particular test situation, the fixtures module would also continue to encapsulate any future code resources that can be used to recreate specific environments for testing purposes. The idea came from the bull project, a queue system for Node.js that we are already using for Telescope, and the fixtures that are used in bull's own testing suite. I took up the issue to create the fixtures module, and also move all the repeatable code involving the dummy blog feed.

You can find the issue here, and my PR here, which has been successfully merged into Telescope's main branch.

Comments

Popular posts from this blog

DPS 909 - Release 0.2 - Hacktoberfest Week 4

It's the home stretch for Hacktober fest! For my final contribution, I decided to tackle my last goal , which was simply to do something fun and interesting. Once again, thanks to GitHub user vichitr and his brilliant project , I was able to quickly find something to contribute. I've always thought that programming algorithms was a good challenge and invited great learning experiences, so for my final PR, I decided to program an example of the sliding window technique in Python. The sliding window technique is a very useful algorithm that is used across many disciplines of software design. It allows users to compare subsets of data (i.e. windows) within a larger collection, in order to find significant items. Personally, I have encountered the sliding window technique during some applied research projects that I have tackled in the past. In a particular machine learning project, I used the sliding window technique to construct subsets of data that were then fed into a separa...

DPS909 - Release 0.1 - A Fork in the Road

Hello friends, welcome back to my journey into the world of open source. Continuing from the last milestone (in which we explored pushing a simple app to Github), this time I begin to scratch the surface of a major aspect of open source - community contributions. For the Release 0.1 deliverable, I work alongside my fellow classmates from the DPS909 course, as we work to review and bugfix each other's work. For reference, we all created the same, simple note-taking app, but each programmer's individual preferences resulted in slightly different designs with unique source code. According to proper Github etiquette, users wishing to contribute to a project should first fork a version of the repo to their own Github account. Then, a separate branch of the repo should be made to specifically address the contribution being made. After the changes are implemented, a formal pull request should be submitted to the official project repo, so that it can be reviewed by the original auth...

DPS909 - Lab 2 - Git Practice: Simple Noter App

Once again, I am continuing my journey to become a full-fledged member of the open source community. For this small milestone, I am practicing the creation and management of a Github repo using git bash on my local machine. For test material, I have created an incredibly simple, browser-based sticky note app, appropriately called Simple Noter. For those interested, the final product is hosted on Github Pages, and can be found here: https://jerryshueh.github.io/simple-noter/ The app itself is very basic - simply type a note into the text space and hit CTRL + X to save. Your note will be saved between sessions until you clear your browser's local data. It uses a number of open source and free-to-use resources, such as Kenny Wong's Hotkeys.js , and Google Fonts. By the way, something I've learned is that all Google Fonts are distributed under the SIL Open Font License, which allows anyone to use and modify them for personal or commercial purposes. As for the learning proce...