MarkUs Blog

MarkUs Developers Blog About Their Project

Archive for February, 2012

Punchlines – February 27, 2012

without comments

Hanson: 

Status:

  • A good batch of legacy link_to_remote fixes done this week, sitting in review right now. Almost there, I think I can finish my parts with one more week’s effort.
  • Discussed with Tobi about using link_to vs. button_to. Tobi suggested I can make my findings into a blog post, which I’ll likely do this upcoming week.
  • Helped review Danesh’s first fixes for his batch of legacy helpers.

Next Steps:

  • Finish the link_to_remote fixes!

Roadblocks:

  • Problems with link_to in the case of not using the default :method which is GET. I think something funky is going on, maybe with our Prototype UJS / rails.js file … but this is all speculation. I have read a few places online where it is advised to use button_to instead of link_to when we want to do something other than GET. Will write about it in blog post …

Egor:   

Status:

  • opened: 687
  • closed: 549
  • spent a lot of time working on HTML 5 validation in functional tests this week. Have forked and started modifying an existing plugin to work better with our tests and currently waiting on a review: http://review.markusproject.org/r/1200/
Next Steps:
  • implement the assignments RESTful API
Roadblocks:
  • two tests this week ='(

Danesh:

Status:

  • Continue with cleaning of use of prototype legacy code. 
  • Submitted some reviews for the cleanup and for removing many unused views/partials I bumped into along the way. Found suitable solutions for :confirm dialog not working when using link_to(), however it doesn’t work always. 
  • Made a blog post about the Bug Viewer UI, please comment!
Next Steps:
  • Continue with prototype cleanup. Fix AJAX calls when using link_to(), they aren’t working as smoothly as I’d like (e.g. pagination links and the spiral loading gif).
  • Implement Bug Viewer UI.
  • Continue with test of collecting assignments.
  • Do more reviews.
Roadblocks:
  • These views are becoming slightly more complicated to confirm that they aren’t being used. Similar naming doesn’t help!

Christine:

Status:

  • Unsure how to proceed on 247
  • Picked up issue issue 656, looked through svn binding wrapper files, become suspicious that lines 936 and 937 may be part of the cause. But could not reproduce bug, asked & received clarification from Karen, will investigate further. 
  • Opened issue 685
  • Ran debugger through rubrics_controller_test for issue 660, no closer to finding cause for failed tests

Next Steps:

  • This week I spent a lot of time looking at several issues, but my still beginner ROR knowledge prevented much real progress. I’ve picked up the hard copy of the Rails3 tutorial, so that I can go through it while on public transit.

Roadblocks:

  • Continue to investigate 656, 660 and 247

Aimen: 

Status:

  • Fixed issue 263, post it on reviewboard and shipped it
  • Posted issue 98 on the reviewboard, waiting for someone to review it
  • Working on adding a column on the Submission and Graders table that can control which columns to hide/show for issue 327
  • Wrote a blog – GitHub and Reviewboard

Next Steps:

  •  Continue working on Drop Down menus for issue 327
  • Worked with Sean on issue 657
  • Continue working on issue 620 and issue 327
  • Pick up another issue

Roadblocks:

  • None

Jay:

Status:

  • Posted the minutes from last week
  • Didn’t get to work on Markus all week till today so I have fixed some things Severin asked for issue 602
  • Fixed the diff patch on RB for issue 483 so now I’m waiting on the unit tests to be reviewed
  • Fixed issue 620. Waiting for reviews now
  • Picked up another issue, 678

Next Steps:

  • Write up a blog post
  • Ship the issues that I’m waiting on to be reviewed
  • Fix issue 678
Roadblocks:
  • Two midterms coming up fast so won’t be able to work on it till the weekend 🙁

Aaron:

Status:

  • issue 298 is in review, after many revisions and quick fixes, I think we are ready to ship, just need a final confirmation from Severin
  • ramping up on issue 648, need to read up on rails record validations and using callbacks for validations in order to implement my solution

Next Steps:

  • Read up on Rails record validations for issue 648

Roadblocks:

  • None

Sky:

Status:

  • Continue with adding unit tests on new model method. Submitted a 2nd version but was suggested to create test cases under new contexts rather than existing ones. Working on it (half way done).
  • Investigated on issue #474 (create a library validator and arrange custom validations). Having a discussion with Severin about the library validation class.

Next Steps:

  • Ensure tests cover all cases with the method and ship #320
  • Submit #474 to reviewboard

Roadblocks:

  • Having midterms. But will guarantee enough work on these two issues.

Tobi:

Status:
  • Put up a review for issue 669 which should be good to go. Waiting for a “Ship It”
  • Spent a lot of time polishing issue 641 currently working on overriding the Prototype handler that causes the problem but ran into some problems that Severin and I are working through. I have put up a review so I can get input from other devs
  • Currently working on 339
  • Posted the minutes for the meeting on January 30th that I forgot to put up 🙂
  • Fixing issue 603 (removing explicit references to “action” and “controller” in link_to)
Next Steps:
  • Getting help with issue 641
  • Putting up a review for issue 339
  • Finishing 603
Road Block:
  • No response from the Prototype devs about the AJAX before/after handler bug I filed related to issue 641

Sean:

Status:

  • Made a lot of progress with issue 651
  • Putting up a review for issue 617
  • Got help from Tobi to fix an environment issue that i was having.

Next Steps:

  • Meeting with Aimen this week to finish up issue 651, and help work some other issues
  • .Post a review for issue 651
  • Pick up a new issue to work on

Roadblocks:

  • Issue 651:     We’ve got a working implementation, but it only seems to work on Mozilla Firefox (not on chrome/chromium, haven’t tried any other browsers yet). Will be looking into

 

 

Written by jparekh

February 27th, 2012 at 6:27 pm

Posted in Uncategorized

Punchlines – 02/27/12

without comments

Marc & Sébastien

Status:

  • Finished the second version of the book of specifications.
  • Installed MarkUs with MySQL on the Linux based computed we borrowed.

Next Steps:

  • Feedback from the mentors about the Book of Specifications

Roadblocks:

  • None

Written by mlaurent

February 27th, 2012 at 5:34 pm

Posted in Uncategorized

Punchlines – 02/27/12

without comments

Camille

Status:

  • Translated the article written previously for the EAT-TICE blog;
  • Continued redacting the final report;
  • In particular, submitted a document summing up our before/after test results.

Next Steps:

  • Keeping on redacting the final report;
  • Submitting its plan to our supervisors.

Roadblocks:

  • None!

 

Nicolas

Status:

  • Finalized the solution for pdf conversion;
  • Got the feedback from Benjamin Vialle.

Next Steps:

  • Correcting the bug happening when trying to collect a particular submission (collecting all the submissions works fine)

Roadblocks:

  • None

 

Written by nbouillon

February 27th, 2012 at 5:08 pm

Posted in Uncategorized

Resources for bug tracking in MarkUs

with 4 comments

The developers of MarkUs use GitHub’s issue tracking system to handle all the bugs floating around our application. It is a very useful system for maintaining current and old bugs, requests for new features and represents the overall state and goals of MarkUs.

Unfortunately, our users do not have the chance to see this unless they try hunting it down themselves. I’m currently working on a feature to point our users to our bug tracker, providing them with easy access to the ability to view and report bugs at their convenience. Here is some sample UI that I’m brainstorming. I’ve come up with some rough drafts of UI that I will most likely use.

The Header

I’d like to add an icon that is placed in the header, providing users with access to it no matter which page they are viewing.

Bug Icon located in the header

The Popup

Once the icon is clicked, a modal dialog will open, disabling the rest of the webpage. The user will see the following options.

Bug modal dialog prompt

View current issues will point to the bug tracker. Reporting a new issue will point them to a blank issue form and requesting a new feature/enhancement will point to the same form but with the RFE label set already. All of these links will open new tabs and redirect to our tracker accordingly.

Drawbacks

In order to file issues, you will need to have a GitHub account. Users might not be bothered to sign up (or even sign in), making this feature practically useless to them. Unfortunately, there is not much we can do with our given resources. Forcing them to use our tracker will help keep things centralized and in one place, rather than setting up some kind of form that sends out emails to mailing lists with the given bugs. Fortunately, the links redirect to logging in or creating a new account and then redirect back once done. If the user is willing to follow through, the login process is just a small, extra step and places the user back on track.

Another issue is the potential increase in duplicate bugs. Some people do not have time to read through our current issues and may just jump straight to reporting one. This is not too disruptive but adds to a teadious process for developers now having to close duplicate issues. I am hoping that the “View current issues” link will nudge users in that direction first but that will not always happen.

Finally, some issues are not in the application but in the way it was setup. These need to be directed to the course admin rather than to us. However, this is not always obvious so adding this feature might also cause an overflow of unnecessary bugs. This can be avoided by only displaying the links in the dialog when the user is an admin. When a grader or student is logged in, perhaps a simple message telling them to contact their course administrator/instructor might suffice.

 

This is what I have come up with but I am open to suggestions, please nitpick, modify and comment away!

Written by Danesh

February 26th, 2012 at 8:22 pm

Posted in Uncategorized

Minutes – February 20, 2012

without comments

The punchlines for this week can be found here: http://blog.markusproject.org/?p=3647 

  • Danesh continued to work on an issue about prototype and will need to spend some more time to look for a solution. He will write a blog post on new bugs and would like to see others’ opinion on it.
  • Egor has been working with Severin on the API. He also opened some new bugs this week. It was also discussed that it’d be great to have all the features of Markus working on the major browsers (ie. Firefox, Chrome, IE, Safari).
  • Hanson continues to work on his part/share of the legacy helper.
  • Sky got issue #402 shipped. He also learned and applied RoR testing on issue #320. He is now waiting on revision before shipping it.
  • Aaron had a busy week so did not have much progress on his issues. He continued to read Ruby on Rails book.
  • Jay fixed two issues (#483 and #602) and opened two more. He is waiting for a review on the 2 issues and will start working on two other issues assigned to him.
  • Christine researched on machinist. She also spent some time looking at unit test files to see examples of machinist.
  • Tobi has been discussing with Severin about issue #669 and #670. He also spent time investigating issue #666 (a prototype issue). He also spent time reading about AJAX in prototype as it was required for the issues he’s working on. He has also started a discussion about AJAX in prototype on a blog post.
  • Sean continues to work on the assigned issues and hopes to squash them during this reading break.
NOTE: Two reminders were made during the meeting:
  1. If you haven’t posted your minutes for the previous meeting, please do so. You can look at the irc logs to see what was discussed during the meeting. The link to irc logs is here: http://www.markusproject.org/irc/
  2. If you haven’t written a blog or two, please do so when you get chance.

Written by jparekh

February 21st, 2012 at 12:47 am

Posted in Uncategorized

Minutes for Meeting held on January 30th, 2012

without comments

  • Karen and Egor were sick. :(.  Egor got reviews for three of his bugs and also started a discussion about Prototype vs JQuery going for subsequent Markus releases.
  • Sky read up some tutorials on Ruby On Rails and is currently investigating issue 402
  • Jay was busy with interviews and assignments but was able to work on a bug over the weekend with Sean and Aimen over a Google hangout session. He has also started working on issue 602
  • Danesh submitted a review for HTML escaping and found an issue with rejecting a student’s invitation, fixed it, and made a different review for it
  • Aaron shipped issue 405 and is currently working on a different bug which he has a conceptual solution to and is currently learning Ruby on Rails to implement it
  • Hanson shipped two issues this week: 326 and 611 and is currently working on issue 404
  • Egor, Hanson, Danesh and Tobi were talking about tackling issue 603 which is a Javascript issue and Tobi volunteered to work on it
  • Karen reiterated her priority for us to finish the Rails 3 bugs before starting bugs with a different tag
  • Christine is stuck on 382 she will be talking about it with Danesh and Tobi after the meeting
  • Tobi worked on issue 468, 434 and updated the wiki with Mac OS X installation steps
  • Aimen shipped issue 386 and updated the wiki with MySQL installation instructions on Mac OS X
  • Sean read up some Ruby on Rails tutorials, Markus code and worked on an issue with Jay and Aimen

Written by Tobi

February 21st, 2012 at 12:09 am

Posted in Uncategorized

Punchlines – 02/20/12

without comments

Danesh

Status:

– Discussed with Hanson about link_to replacing link_to_remote. The

prototype legacy helper function uses link_to_function but this does

not work always. Trying to find a suitable solution.

– Found some unused partials, I am slowly removing them and posting up reviews.

– Considered making the “Report a bugs” link similar to a dialog

popped up by role switching, have a few options there.

– Going over issues/reviews.

Next steps:

– Continue with removing use of the legacy helper.

– Finish off test for collecting submissions.

– Write blog post about “Report a bug” page.

Roadblocks:

– Too much time spent being sick 🙁

 

Egor

Status:

– had #627 bounce back due to a weird problem that happened only on postgresql. Worked on it again and closed it, again.

– closed: 629

– opened: 666, 662, 661

– spent some time talking with Severin about #649. This problem will only come up for people that are not living in the EST ( default time zone is EST ). I believe that the need to manually set the local time zone should be mentioned on the wiki somewhere.

– spent most of my time this week working on #549

Roadblocks:

– need tags for: https://github.com/MarkUsProject/Markus/issues/666 ( evil bug )

Next Steps:

– finish #549, write a blog post for the proposal for the assignments API, write the assignments API

 

Hanson

Status:

– Another batch of link_to_remote fixes submitted. I didn’t get as much done this week as I had liked , very busy but I still wanted to get at least something into RB this week.

Roadblocks:

– Super busy week @ job and school assignments. Luckily it’s our Reading Break now for UBC-ers.

Next steps:

– Put in extra effort to squash remaining link_to_remote tags… so I can move on to something else!

 

Sky

Status:

– Fixed and shipped #402

– Learned about RoR testing, especially unit tests for models

– Added unit tests for #320 and got feedback from Severin, now in the progress of revision; could be some more back and forth before shipping

Roadblocks:

– None.

Next Steps:

– Complete adding the unit tests in the desired way and ship the issue
– Work on a new issue

 

Aaron

Status:

– Due to assignments and midterms this week I was not able to spend time working on Markus

– Looked at the upload/download examples of the modal dialogs which I will be using as a reference for creating the add new section modal dialog for issue 298

– Did more readings on my Ruby on Rails book (based on version 1.0, but still good read to learn the basics)

RoadBlocks:

– None

Next Steps:

– Reading break for UBC this week!  Not too much coursework or no classes to attend so I will be able to spend much more time on Markus, interview on Thursday so I will be unavailable Wed-Thursday.

– Continue on my implementation of modal dialog for issue 298

 

Jay

Status:

– Read up on machinist/shoulda testing

– Fixed issue #602 and #483. Waiting on review requests on them.

– Opened 2 other issues (#678 and #681)

Roadblocks:

-None

Next Steps:

– Ship the 2 issues that I’m currently waiting to be reviewed

– Start working on other 2 issues.

 

Christine

Status:

-Had midterms/quizzes/assignments this week did not get much time in for Markus

-To begin work on #247:

-Read “A Guide to Testing Rails Applications”

-Read Machinist readme file.

Next steps:

-Reconcile reading on testing to actually converting fixtures to

Machinist in assignments_controller_test.rb. This file seems to

already use Machinist in many places though (@assignment =

Assignment.make is used) I hope I’m not looking at the wrong file?

Roadblocks:

-Reading break this week, but I got asked to go into my previous co-op

job 9-5 for the week. Will not have any coursework though, so will

have more time for Markus than previous week.

 

Tobi

Status:
– Created blog post to open discussion and filed a bug on the Prototype Project about a Prototype AJAX “before” handler bug for issue 641
– Studied the Prototype Ajax guide (I didn’t know much about AJAX in Prototype) for bugs 666, and 603
– Currently working on issues 603, 669 and 339
Roadblocks:
– Waiting for a reply on the Prototype bug I filed
Next Steps:
– Finishing off 603, 669 and 339
– Looking for a Markus specific fix to issue 641 if there is no reply from the Prototype Devs

 

Sean

Status:
– Currently working on 651, 617
Roadblocks:
– None
Next Steps:
– Finish up, and post 651, and 617 for review

– Pick up a new issue

 

Aimen

Status:
– Fixed issue 263, waiting for someone to review it
– Fixed issue 98 and have to post the Review on Review Board
Roadblocks:
– None

Next Steps:
– Write a blog about Git Hub and Review board
– Read up about Drop Down Menus to Make columns hide/show for issue 327

– Work on issue 620 and 651

Written by Sky

February 20th, 2012 at 9:20 pm

Posted in Uncategorized

Punchlines – 02/20/12

without comments

Camille

Status:

  • Installed MarkUs on a second computer just in case;
  • Wrote an article for the EAT-TICE blog;
  • Started drafting the final report;
  • Did some research on two specific subjects for Guillaume Moreau.

Next Steps:

  • Finalizing RGhost solution: mainly testing.

Roadblocks:

  • None!

 

Nicolas

Status:

  • Implemented the RGhost solution for “pdf to jpg” conversion (previously ImageMagick) ;
  • Investigated a solution for displaying the images resulting from the conversion ;
  • Implemented the solution for that ;

Next Steps:

  • Testing what has been implemented ;

Roadblocks:

  • None!

Written by nbouillon

February 20th, 2012 at 5:41 pm

Posted in Uncategorized

Absence of an AJAX “before” Event Handler

with 2 comments

With the advent of Rails 3 and Unobtrusive Javascript, we have had to replace a lot of the inline Prototype Javascript code with calls to functions within the rails.js file which contains many Prototype Javascript functions and AJAX event handlers. However, I have come to realize that the AJAX “before” handler is missing. After looking around and debubbing, I have still not come across some AJAX before handler. As a result, Javascript code that we run before an AJAX request is not executed. This im my opinion is what has led to the log in button from the log in screen and the role switching dialog not being disabled on logging in. I realized that the initial fix I put up for review of issue 641 was wrong as I modified the after event. Instead I should be adding an AJAX “before” handler. I need input on whether the idea is senseless or not.

[EDIT] I created a ticket in Prototype Project. Here is the link https://prototype.lighthouseapp.com/projects/8886-prototype/tickets/1319-button-disable-_with-doesnt-work-because-theres-no-ajax-before-event-handler

Here are some of the references I used:

https://github.com/rails/prototype-ujs

http://www.simonecarletti.com/blog/2010/06/unobtrusive-javascript-in-rails-3/

 

Written by Tobi

February 19th, 2012 at 12:16 pm

Posted in Uncategorized

Punchlines – 02/13/12

without comments

Camille

Status:

  • Corrected the state of the art to include Guillaume Moreau’s indications.

Next Steps:

  • Validating the choices we have made so far during a meeting with Guillaume Moreau;
  • Studying in depth the conversion process to facilitate future work –by understanding MarkUs integration requirements .

Roadblocks:

  • A lot of interviews for my internship this week!

 

Nicolas

Status:

  • Computed some tests on the memory size option of the ImageMagick “convert” function –> not conclusive
  • Computed some tests on the GhostScript convert functions –> much more efficient
  • Discovered a ruby gem called RGhost making available these GhostScript functions in Ruby
  • Computed some tests on the ImageMagick “montage” function

Next Steps:

  • Validating the use of RGhost by supervisors.
  • Finding an acceptable way for image montage (n images to 1 image) – See if it is really necessary

Roadblocks:

  • None

Written by nbouillon

February 13th, 2012 at 3:59 pm

Posted in Uncategorized