Posts

Showing posts from October, 2017

Assignment 1 - Fixing a real bug

Image
This is a continuation from my previous post on  getting a thimble testing environment to run . To keep you up to speed, my goal was to fix this issue right here: As you can see, if one doesn't publish a project, the description isn't saved to the server. The text is persisted if you stay within the project editor page, which could fool a user into thinking the text is actually being captured, only to be surprised if they leave it. If everything within this page is saved without publishing, why isn't the description doing it as well? Well, my task was to fix that. The actual problem narrowed down to how an ajax request is made in order to save the data to the server. Every time a user "published" a project, all of the data would be saved, the description included. "Unpublishing" a project would do the same, all of the data within the page would be saved. When not publishing, the page saved only certain elements, such as the Project name (upper left

Lab 5 - Getting a Thimble testing environment to run

Image
Let's just begin this lab by saying although I am loving the experience, working in an open source environment can be very frustrating. Things don't work, you don't know why, and you feel yourself getting smaller and smaller as you dig deeper into directories and files that you have never seen before. I want to thank the lovely folks on Thimble that helped me through every step of the way, including of course our very own professor! Of course, this was to be expected. My bug , which at a glance seemed easy enough, but it required that I have a testing environment setup so I could start tinkering around with the code in order to squash this big.  In order to reproduce the bug, I needed to be logged in so that I have access to a view that allows me to publish a project, or not to do so, in order for it to only be saved in that account. This leads to the name of the project being saved, but not the description.  As such, I dug into the README file , and followed the steps de