MarkUs Blog

MarkUs Developers Blog About Their Project

Archive for February, 2014

Help System Proposal

with 2 comments

Help System:

The MarkUs help system is a way for helping users understand the functionality of MarkUs. The help system will contain embedded documentation in the website. The help system will use both hovering function over text and also will have tool tips throughout  the website. The tooltips will be a little picture of a question mark next to certain text or tabs or input boxes. When the user either clicks or hovers over the tool tip a box will appear telling the user the functionality of the specific element. We are also considering giving the user the ability to turn on and off the help system. This could be useful if a user is comfortable with MarkUs and does not need to see the extra dialogue.

We would like to make it so the help system can easily be changed when a change to the system is made. For this we feel it would be best to separate the actual text that will go into the embedded documentation from the pages themselves. We will store the text in a file and reference the sections that way. This implementation would be done much like the multiple language feature that exists. This will make it much easier for future developers to edit the tool tips if functionality changes or even add new tool tips by following the same design.

Here are some websites that we would like to base our system off of.

http://downloads.sixrevisions.com/css-tooltips/index.html

http://www.pat-burt.com/wp-content/csstooltip.html

The following is a list of where we believe the help system could be useful.

Admin View:

When an admin first logs in they should be able to hover of the tabs for a short description of what is under each tab for example the assignments tab could display “Review and Create Assignments”.

Within the tabs there are many sections and elements that could have documentation to help the user. Here is a list of some places where extra documentation can help.

Under the Assignments tab:

– On choose assignment page:

    > Upload and download button on the top right: display message on hover.

    > Add Assignment and Add Marks Spreadsheet: display message on hover.

– On Add Assignment page:

    > We will put a small icon (for example: ‘i’ icon) on the right side of each textbox that will

       display the message when the user click on it.

    > Some of the sections (Marking scheme, required files, etc.) will have the small icon on

  the section’s title that will display the properties of each selection.

– On Assignments > Settings > Marking Scheme:

    > We will add more stuff into the “Help” text box

– On Assignments > Settings >  Annotation:

    > We will add more stuff into the “Help” text box

– On Assignments > Settings > Text Framework

    > We will put a small icon on the right side of each section that will display the message

       when the user click on it

– On Assignments > Groups and on Assignments > Graders

    > The message will be displayed when the user hover onto the title of each tabs (for

       example: All groups, Valid, Not Valid tab)

– On Assignments > Submissions

    > The message will be displayed when the user hover on the button or the “title” (for

       example: collect all submissions, csv report, etc.)

Under the Users tab:

– On Users > Students:

    > We will have a small icon next to the title (Manage Students). The message will be

  displayed when the user clicks on it. This message will explain the actions (Bulk

  action, Give grace credits, Add Section, Mark active and Mark inactive)

– On Users > Students > Edit Students:

    > We will have a small icon next to “Grace Period Deduction”. The message will be

       displayed when the user clicks on it.

Students view:

Under Assignments tab:

After Clicking on an assignment you will see submission, assignment rules, and group information. In each of these sections we will have a small help icon that will explain details about what the student is looking at.

Under the Submissions tab:

We will have a help icon with a detailed description on how to submit your work. One option is a short step by step process that could walk a student through the submission.

Under the Results tab:

A help icon with details about what results the user is looking at

Graders View:

Under the Home tab:

– On Home page:

    > We will have a small icon next to “Your API Key”. The message will be displayed when

       the user clicks on it.

Written by Christopher Jonathan

February 28th, 2014 at 1:31 pm

Status Update: February 27, 2014

without comments

Tiago

This Week: I worked on issue #1312

Roadblocks: None

Next Week: Try to make markus work with ruby 2.0

Rafael

This Week:
– I worked on issue #1220 and on the portuguese translation of MarkUs.

Roadblocks:
– No big roadblock, although I’m still not that comfortable with RoR and MarkUs.

Next Week:
– I’ll be travelling, but I’ll try to finish what I’m doing with the translation.

Kitiya

This Week:
– Worked on issue #1358
– Reviewed code on a Group page under the Assignment tab that already implemented the search function to get more understanding on the application.
– Learned more about Rails on the overview, Ruby and UI parts.

Roadblocks:
– Still not comfortable with Rails and it took me quite a bit of time to trace the program.

Next Week:
– Continue working on issue #1358
– Learned more about Rails on the Model part

Zach

This Week:
– Started marking up current git branch for readability
– Implemented jQuery filtering which ultimately didn’t work
– Discovered the correct solution, the FilterTable object which is nearing implementation (I think)

Roadblocks:
– Erroneous understanding of the DOM.

Next Week:
– Commence git work in earnest.

Jeremy

This Week:
I continued work on #1310 and started reading a book on rails to help better understand the project.

Roadblocks:
I fixed the one big roadblock I was having, which was not knowing how to query for the data that the project uses. For reference, if you’re using postgresql you go into the markus directory in the terminal and type psql postgres -d markus_development -U markus ….and then type in your password.

Next Week:
I’m hoping to have that ticket done by the end of this week, so next week I’ll be looking for new tickets to do, as well as getting together with Andrew and Sheng to work together on our assigned task.

David and Gillian

This week:
– Did testing for grades spreadsheet for both Master and Beta branches and compared functionalities
– Compiled user stories for spreadsheet
– Logged issues found during testing the spreadsheet on the Master branch
– Fixed issue #1376 (being able to upload no file or wrong files)

Next week:
– Fixing more issues with spreadsheet
– Additional testing of Beta and Master branches

Cornell (Alex, Ope, Christopher)

Ope

This Week:
– Created a branch on my fork that will be used for maintaining the group’s changes to the help system.
– Reviewed pages under the Assignment tab, and documented pages that already have help pages that can be expanded on and pages that have no help information.
– Reviewed fix for bug (issue #1361, pull request #1371) due to minor issues and merge conflicts. Fixed this, and awaiting merge from Benjamin.

Roadblocks:
– None

Alex

This Week:
– Worked on the design of the help system and created a proposal for the help system.
– Researched forms of help systems that other websites use.

Roadblocks:
– None

Christopher

This Week:
– Create a new branch for the helper system.
– Figure out several design of helper system and find the best way to implement the helper system.
– Write a proposal of the helper system on MarkUs blog.

Roadblocks:
– Find the best way to share a branch between us for the helper system.

Next Week:
As a group at Cornell next week we will start working on the help system that we have proposed. We hope to have feedback on our proposal by next week, so we can change things and add ideas before we start implementation.

Written by Kitiya Srisukvatananan

February 28th, 2014 at 9:42 am

Posted in Status Reports

Status Update: February 23, 2014

without comments

Zach

This Week:
– implemented search in the users view through ruby
– researched gems for git backend / familiarized myself with their basic usage

Roadblocks:
– None

Upcoming Week:
– install current git branch, complete search through jQuery so page reload isn’t required
– contribute to wiki

David Dias

This Week:
– Familiarizing myself with the Markus beta branch and how it works
– Learning more about Rails + Ruby to understand why errors in the beta are happening

I haven’t done as much as I’d like this week but I think I’ll fix a couple errors by next report.

Kitiya

This Week:
– Submitted pull request for issue #764 again (the previous one did not pass the test).
– Working on issue #1358 – adding search functionality on the user tab.
– Finalize my project topic –  An view of all of an individual student’s work.

Roadblocks:
– Got some problems on git commands.

Next Week:
– Continue working on issue #1358.

Rafael

This Week:
– This week I searched the github page for some issue I could work. Tried unsuccessfully to reproduce error from issue #1222, wrote at its page on github but I still got no response. So I worked with issue #1220, and came with a solution that isn’t ideal. I’ll still try to work something out for #1220 this week…

 Roadblock:
– I believe ruby on rails and, in lower scale, the understanding of how the MarkUs environment should be or behave sometimes are the major roadblocks.

 Next Week:
– Finish working on #1220 and talk to Karen about project idea for the term

Western University (Jeremy, Shenglong, Andrew)

Jeremy Winters

This Week:
– Was on vacation so didn’t have a large amount of time on the project. Time I got was spent working on #1310 and learning how rails is working.

Roadblocks:
– I traced the code to what table in the database the problem should be coming from, but I’m not quite sure how to query the database. I tried quite a few things but need help with this.

 

Next Week:
– Should be able to finish that issue once I get some help with the database problem. Shenglong, Andrew and I plan on getting together to discuss our work on the performance enhancements of MarkUs.

 

Andrew Hernandez

This Week:
– Spoke with Jeremy and Shenglong about which project we will be working on

Roadblocks:
– I have been out of town for a large part of the week so I have not had much time

 

Next Week:
– Will have an IRC meeting with Jeremy, Shenglong, and Karen, regarding which project we will work on

 

Shenglong Gao

 

This Week:
Sorry, I was travelling and in a week-long competition (we won, yay), so I haven’t been able to get much done this week. We have talked, among the Western group, and collaborated about the nature of what we’d like to do for the project, though.

 

Cornell (Alex, Ope, Christopher)

 

Ope:

 

This Week:
– Started looking into parts of system that could benefit from the help system, and possible implementations
– Fixed a bug (issue #1361). Created a pull request for the issue.Roadblocks: NoneAlex:This Week:
– Pushed a fix for issue #1342 where the groups were not rendering correctly in the assignment tab, which was worked out between Chris, Ope and I.Roadblocks:
-Trying to figure out to create a branch for the help system so everyone can see it.Christopher:This Week:
– Find a bug (issue#1360)
– Fix the bug (issue#1360)
– Started looking the way to develop the help system with Alex and Ope.

Roadblocks:
– local git hub issues, which I was able to resolve with Alex and Ope

Next Week:
As a group at Cornell next week we will start creating the wiki page with our proposal for the Help system. We will also work on the continued issues that we have been looking at.

 

Tiago

This Week:
– I looked for some bugs to work on, and decided to work on ruby 2.0 problems.

Roadblock: None

Next Week:
– Talk to Karen about project idea for the term

 

Written by Andrew Hernandez

February 23rd, 2014 at 11:04 pm

Posted in Status Reports

Status Update: February 13 2014

without comments

Zach

This week:
– Unified filenames for CSV files along with some UI changes to download.

Associated Pull Requests: #1354, #1345

– Began working with Kitiya on issue #1358. Implementing search functionality in the User view.

Roadblocks:
– Nothing major with MarkUs.

Next week:
– Continued work on #1358.
– Look into git backend and what issues previously had. This could potentially be my project for the term.

Jeremy

This week:
– I’m currently working on issue #1310, and gaining an a better understanding of how everything works in Markus and rails.

Roadblocks:
– Haven’t had any major roadblocks yet.

Next week:
– Finish up that issue I’m working on, and get together with Andrew and Sheng about what we want to work on.

Ope

This week:
– Worked on installing the MarkUs application on my computer. Successfully completed installation.
– Reviewed parts of application code (critical controllers and views) to better understand the application flow
– Reviewed some existing issues on GitHub to understand work that may be needed
– Tested out the application interface to become more familiar with navigating through the system

-Roadblocks:
– Minimal time to catch up on project due to late start.

Alex

This Week:
– I worked on issue #1342 for creating groups in assignments.Was able to fix the issue by changing code in the group controller.

Roadblocks:
– I am not sure if the change to the issue will mess other parts of the grouping functionality. We need to do some other testing to determine if this is actually a fix.

Christopher

This week:
– Helped Ope on installing MarkUs application.
– Try to understand how MarkUs works by logging in as Administrator, Student and Grader.
– Looking on how the code works while navigating through the MarkUs Application
– Find a bug and put it on GitHub (issue #1342)

Roadblocks:
– Learning Ruby and how Rails work.

(Collectively at Cornell, Alex, Ope, and Christopher)

Next week:
As a group here at Cornell we plan on implementing the help system. Our first task is to better understand the functionality of MarkUs and where useful help tools could be implemented. By the end of next week we plan on creating a proposal of places that could use the help system and also develop some UI designs that we could use for the help system. We also will be working on issues that still exist.

Kitiya

This week:
– Submitted pull request for issue #764 – using correct HTTP status code for expired sessions.
– Working on issue #1358 – adding search functionality on the user tab.
– Familiarizing myself with MarkUs and Rails.

Roadblocks:
– Having not fully understood Rails is the biggest roadblock for me right now.

Next week:
– Continue working on issue #1358.
– Finalize the project I will be working on toward the term.

Gillian Chesnais
David Das

This week:
– #1337 (where releasing grades for all students in a spreadsheet of more than one page of students would fail)
– #1338 (where a TA with no student trying to view a spreadsheet would raise an error).

#1337 was failing because there was a function call (call() on line 221 after the fix) without any arguments. It needed arguments describing how results from a database query should be sorted and a variable pointing to the current user, which we provided.

Issue 1337


The first two arguments above indicate how it should be sorted, and we set these to be empty strings because we figured that since all users were being selected in this case, the order would not matter.

As this was our first bug fix and we did not know Ruby at all, we spent a significant amount of time pinpointing this error and understanding why it was failing, and how it related to the output. We also needed to learn how G_TABLE_PARAMS used procs and lambdas to fix this bug.
For issue #1338, we figured out that the function alpha_paginate() was meant to return ‘[]’ when there were no students assigned to a TA, and it attempted this by checking if total_pages was 0. However, in this case total_pages is actually 1. We added another condition that all_grade_entry_students was 0 instead, which seems to have fixed this bug. You can see this fixed below:

Issue 1338


In the future, we will start to focus on patching and fixing the Markus beta.

Andrew

This week:
– Working on ticket #1348 to disallow identical annotations on the same line of an assignment.
– Submit detailed bug report about an issue with annotation.
– Familiarizing myself with Markus functionality and code.

Roadblocks:
– Catching up on schoolwork hasn’t allowed me to put as much time as I’d like in fixing the ticket.

Next week:
– Finish ticket #1348
– Speak with Jeremy and Sheng about which project we will be taking on.

Shenglong

This week:
– Submitted pull request for installation instructions on linux
– Working on issue #1347
– Learning MarkUs and Rails

Roadblocks:
– Not understanding Rails and the codebase is my major stumbling stone
– I’ve also been abroad the this entire entire week

Next week:
– Continue working on issue #1347
– Finalize the project I will be working on toward the Western team

Rafael
Tiago

This week:
– Started the Portuguese translation.
– Issue #1333
– Issue #1312

Roadblocks:
– None

Next week:
– Continue on the Portuguese translation of MarkUs.

Written by Zach Munro-Cape

February 13th, 2014 at 8:26 pm