Bug Hunter
After having the chance to test out the waters of building an open source project (Building Firefox Source) , it was time to branch off (git pun intended) and begin researching other open source projects that we would like to learn more about and contribute to.
During the first year of my program, we were taught the basics of HTML, CSS, and JavaScript. I began using an online editor called Thimble. Developed by the Mozilla Foundation in partnership with CDOT at Seneca College, Thimble is an online code editor that allows users to easily create, hack and publish their own pages, display live changes, all in a user friendly interface. I was interested in learning more about Thimble and figured it would be a great start for my first bug.
Thimble uses GitHub as their version control platform. To simplify the search, the issue tracker has a tag which sorts bugs more suitable for beginners. After searching through the issues page, I came across Issue#1918: Change Publish popup title when project is Live.
To summarize:
- user updates existing live project
- the publish popup title always says “Publish your Project”, although it’s already been published
- FIX: change it to “Your Project is Online” when the project is published.
–UPDATE-10/5/2017–
-I came across a visual bug which caused content to overflow on the main screen.
-filed my first issue#2518
-will follow up in a separate post
Put a Claim on It
The last thing you want to do is spend a bunch working on a bug, only to find out it has already been assigned to someone else or closed. It’s important that you scan through the comments sections to check the history as well as the Assignee’s status to make sure someone else wasn’t already working on the issue. If everything looks good, claim the issue for myself.
The issue was first opened on March 27 , a user by the name of rkgupta21 had taken on the bug around the same time. There has been no activity since April 16, so I decided to leave a comment asking them if it’s okay to take over the work.
Within minutes I had received confirmation from flukeout that I could begin working on the issue.
Ready, Set, Error!
After being assigned my first bug, I began setting up my Thimble build environment. This required downloading a few dependencies and forking the Brackets and Thimble repositories. The automated installation process was execute using npm and vagrant tools. After my experience with building Mozilla’s Firefox, I couldn’t believe how smooth this setup process was going. Within the first hour I was able to successfully build and run a local Thimble development server with full functionality…or so it seemed…
If we refer back to Issue#1918, this requires a user to be logged in and re-publish an existing project. Thimble use’s Mozilla’s publish.webmaker.org API in order to store users, projects, and files. For security and authentication Thimble uses login.webmaker.org and id.webmaker.org.
While trying to execute the login/sign-up features the local server continuously return a blank page with little to console feedback.
When attempting to login/sign-up the server returns a 404 error.
I joined the Mozilla Thimble community on their Mattermost channel
Members were quick to recommend individuals that would be more familiar with the topic
Unfortunately until I get this error solved I wont be able to get started on this bug. I will continue to update the list below with the build status and bug progress.
Build Status
- 10/5/2017
-
- will attempt separate build environment on a linux machine(TO-DO)
- 10/4/2017
-
- error when trying to launch id.webmaker services
-
- uninstall/reinstall VMBox, Vagrant (NO FIX)
- 10/3/2017
-
- error when trying to launch id.webmaker services
-
- vagrant destroy + vagrant up (NO FIX)
Reflection
Considering that this is my first time working on an open source project, the nerves were definitely there. When learning a new subject or taking on a large task, I can quickly become overwhelmed when looking at the process as a whole.
One thing that’s important to remember is, EVERYBODY has to start somewhere.
Realistically in the case of open source, nobody has a complete understanding of the project inside and out. Successful projects aren’t driven entirely by funding, but by a strong community that’s willing to work together in finding solutions and creating new ideas. What you may be an expert in on end can be the solution to someone’s problem on another.
Although a lot of this is new and unknown to me, I am excited to be gaining experiencing and building my knowledge of the open source world. Also, having the opportunity to collaborate with a great community of contributors.