Hi,
I'm Candy, an Outreachy intern for the 2019 May-August round and I'm
working on the debci project.

This is an excerpt from my Outreachy blog post: Outreachy Week 1 – Week 3:
Working Remotely is Hard
<https://stringpiggy.hpd.io/outreachy-week1-week3-working-remotely-is-hard/>.
The mail only contains the project progress report part.
Week 1: Vagrant

During the application process, quite a few applicants were stuck at
setting up the development environment for debci. I would like to improve
the experience. At first, I used docker because I was more familiar with
it. After finding an empty VagrantFile in the repository, I decided to try
something new and went with vagrant. Learned some shell script and user
permissions during the process and the biggest find was to use the
debian/contrib-stretch64 box rather than debian/stretch64. The contrib
version contains the guest addition stuff.
Week 2: Starting First Tasks

I worked on opening a self service section for users to requests tests
themselves this week. Got stuck a little bit every step of the way, but not
really stuck. Interesting finds that I would like to log:

   - For static file generation, create a symlink in public directory to
   the file to be generated in public/data/.html and add it to
   bin/debci-generate-html
   - Sinatra automatically loads layout.erb if it exists, and you can
   change set :views, <PATH> to change the default directory to store the
   erb files
   - In order to use Ruby to print to stdout when using foreman start you
   have to add $stdout.sync = true before the print runs
   - Use the general test API in order to fulfill all the user stories
   - Decide to use Ruby to generate dynamic HTML through erb templates,
   because it could be more customizable
   - Use Sinatra::ContentFor to seperate JavaScript files into the
   templates, and create dummy functions in lib/debci/html.rb for static
   file generation to work

Week 3: Searching, Pagination & UX

This week, besides the Self Service section, I also tried fixing the search
package part of the index page. Currently it just takes what the user
inputs and redirect them to the page which may or may not exist.

Things I did or should log down for this week:

   - Dependencies are managed here: Build-Depends: in debian/control
   - Learned to query data with ActiveRecord and used kaminari
   <https://github.com/kaminari/kaminari> for pagination
   - Fixed API documentation link in the Debian WIKI Page:
   https://wiki.debian.org/ContinuousIntegration/DebianSetup
   - Sketched out a draft UI for Self Service section

We discussed and decided to work on non-JS versions of the Self Service
Section. With JavaScript enabled, the UX will be more complicated which
requires more time to generate the whole concept and I would like things to
work first since it doesn't exist yet.
Cheers,
Candy Tsai (IRC: kandi)

Reply via email to