While badges and achievements have their place, some training programs often still require participants to have a printed or PDF certificate bearing their name as proof of completing a task. Griffith University developed a tool to fit this need some years ago and it has recently been transformed into a Blackboard Building Block, allowing more sustainable usage and customisation options. This presentation will talk through the history of the project and demonstrate the capabilities of the new Building Block.
3. This Session
• Why have a printable certificate and how does this differ from the Achievements tool?
• History of the Certificate project
• Development challenges
• What can be done with the Certificate tool?
• What are the limitations of the Certificate tool?
• Demonstration
• Where to from here?
• Questions and Answers
3
5. Why have a printable certificate?
• Quick visual verification
• Record of completion that student can retain
5
6. Why not use the Achievements Tool?
• Greater ability to customise certificate
– Necessary if multiple achievements in one site
• Development pre-dates the Achievements Tool
6
Image source: https://en-us.help.blackboard.com/Learn/Instructor/Performance/Achievements
11. Beginnings
11
• Originally built in 2009 for Laboratory Induction
• Students would complete online induction and quiz,
then receive certificate via Adaptive Release
• Certificate shown to instructor upon entry to
laboratory
• The certificate was not originally a Building Block
• Certificate was contained in a Flash file (user therefore
required Flash Player Plugin)
23. Proposal in 2013
23
• Do away with Flash
– Improve browser and device compatibility
– Easier for users to save certificate
• Self-service user interface
• More sustainable
25. Challenges
25
• I’m not a Java developer
• Building Block Developer Documentation is
incomplete in parts
26. Overcoming Challenges
26
• Talk to people
• Search for answers in the documentation
• Join the Blackboard Community forum
• Find other Building Blocks to build upon
• Trial and error!
28. Capabilities and Limitations
28
What it can do:
• Custom link name
• Custom certificate design upload
• Display user name and ID
• Display current date:
– Full date (DD/MM/YYYY)
– Year only (YYYY)
– No date
What it cannot do:
• Custom positioning of elements
• Choice of fonts
• Edit certificate design online
• Displaying of test scores or date of
completion
30. Certificate and Test Relationship
30
Test Adaptive Release Rule Certificate
Checks Test Score Display? Yes/No
No direct relationship – Certificate cannot check test scores or date of completion
31. Where to from here?
31
• Greater ability to customise
• Ability to modify design online, e.g. placement of text and graphical elements
• Choice of fonts
32. Resources
32
• Building Block Tag Libraries
http://library.blackboard.com/ref/b9696cc1-1d49-45f3-b8af-ce709f71b915/
(or search the web for “Blackboard Learn Tag Library”)
• Blackboard Community Forum
https://community.blackboard.com/
(or specifically https://community.blackboard.com/community/developers/learn)
• Oscelot Projects
http://projects.oscelot.org/
• GitHub
https://github.com/
• AllTheDucks
https://www.alltheducks.com/
Useful blog posts, workshops, and some documentation at https://docs.alltheducks.com/
Preparation: Log into Blackboardhttps://bblearn.griffith.edu.au/webapps/blackboard/content/listContentEditable.jsp?content_id=_2594803_1&course_id=_25761_1
I have a background in web development
You might have read from the session description that I’ll be talking about a Building Block we developed at Griffith University that allows a certificate to be generated with student details that can then be saved as PDF or printed. More specifically, here’s what I’ll cover.
This presentation may appeal to various audiences –
- People wanting to do something similar – knowing our challenges / what’s possible – if you’re wanting to build a building block or integrate with Blackboard in some way, some challenges and tips learned from this experience
- Building Block developers – some tips and where to get help
Original reason for developing – lab entry
Quick visual verification – certificate normally attached to quiz, but for large groups (hundreds per semester compounding in Organisation site – pre-lab training), can be cumbersome to search through Mark Centre (Grade Centre)
- Lab entry (one of the first projects to use this) – ideal for this
Record of completion – nice to have - add to portfolio, etc.
Badges and Achievements have their place – good to see such a tool now available in Blackboard
Achievements – if you’re not aware – consists of “badges” and “certificates” that can be unlocked on certain triggers. However, there is limited capability to customise these - need to customise if multiple achievements issues in one site (see next slide – elaborate on the second note)
We first started using certificates in 2009 (will explain more in history). Achievements became available in Blackboard in 2013.
- Even if Achievements did do what we wanted (customisable names), they didn’t exist when we needed certification (will explain more in History)
We have an Organisation site for Workplace Health and Safety
Inside that site, there are several training modules (e.g. Fire Safety, General Workplace Health and Safety, Biochemical Safety, Office Ergonomics).
Each module ends with a quiz.
On completion of each quiz the participant needs to receive a certificate.
If we used the Achievements certificate, we’d get something like this.
Name on certificate is the name of the site. Cannot modify this to be more specific, e.g. one particular module within the site.
The certificate we developed allows for a custom name to be applied.
I mentioned earlier – certificates used for quick visual verification
Originally – entry into labs. Could be 1000s of students enrolled in Organisation site. Trawling through Mark Centre entries could be time consuming. Instead, students who complete quiz bring certificate to lab to get entry.
Made available via Adaptive Release rule, e.g. if they got 80% of the questions right on quiz, the certificate item would display
Not originally a Building Block – was housed on a separate server (our application server for PHP apps) – will explain how that worked in the next slide
Remember Blackboard 8?
When the original certificate tool was built, we were using Blackboard 8. It used a frameset…
The header was a separate page – loaded into a frame
The menu was a separate page – loaded into a frame
The centre content was a separate page – loaded into a frame
Because this centre content was a frame of its own, we could place a redirect code (bit of JavaScript) into the content that sent users to a different page to display in the centre.
It would use template variable to insert the user ID
So our certificate was stored on a separate server – our app server.
This is what the URL was like for that page, but because it was loaded into a frame, the address was not revealed in the address bar of the browser (it still showed the URL for our Blackboard environment)
At Griffith – user ID is their student number, hence app server could look that up to find user’s name
Can anyone see a problem with this, though?!
Query string contains the user’s data
Because the app server and the Blackboard server can’t talk to each other, there’s no way for the certificate (on the app server) to check who is logged into Blackboard. The only communication was from Blackboard to the app server via this query string – no verification, though.
We underestimated the sneakiness of our students! Someone viewed the page info in their browser to get the URL of the page inside the frame. Then, worked out that they could change the details in the query string.
Was uncovered because students were found to have certificates, but no record of completing the quiz (no Mark Centre record).
Obviously, housing the certificate on a separate server was going to be a problem, so our Blackboard team quickly worked to get the Certificate shifted across to the Blackboard server in the form of a Building Block.
As it was a job that kind of needed to be done quickly, it rather crude, but it worked.
Basically, retained same Flash file for housing the certificates, but just stored on the Blackboard server, hence the student ID did not need to be communicated via a query string that could be spoofed, therefore improved security.
No user interface – all handled through back-end.
However, still a lot of challenges.
All certificates were housed in a Flash file. If someone wanted a change made to their certificate, or we needed to add a new certificate, we’d need to:
add it manually to the Flash file
Re-publish the Flash file
Re-upload the Flash file
Test that it’s all still working
Required collaboration between my team and the Blackboard team on campus. It could sometimes take a few days turnaround to do due to other commitments.
Not long after the launch of the certificate tool, there was a huge increase in smartphone uptake. Even though Blackboard itself was not mobile optimised, we still needed to be mindful of people using mobile devices.
We also noticed that even on desktop computers, Flash was becoming less reliable (display and printing issues), whereas Flash used to be quite reliable across different platforms and different browsers (one of the reasons we built it in Flash in the first place).
The certificate tool had unprecedented growth in popularity.
Started out just for one certificate in one site. By 2013, had grown to over 20 certificates.
The more certificates, the more likely we’d need to make changes/updates.
These challenges led us to pursue development of a fully-fledged Building Block version of the certificate tool
I put together a proposal (kind of a wish-list with a few options) for developing this into a fully-fledged Building Block.
Doing away with reliance on Flash would mean:
Certificate could be viewed on mobile devices and reliably in any browser – no need for a plug-in
Users could save a copy of the certificate to their computer – while there had always been a “print” option, printing to PDF may not have been installed on all computers and saving a still image from Flash is not always easy
Self-Service user interface means instructors can add/modify certificates themselves without our intervention
More sustainable – less support from us and future-proofed because we don’t have to worry about plug-ins that may disappear / not be installed on some computers
At this point – no developer identified to actually build it
Ultimately, that proposal ended up on my plate
We had no developer available to do it, so I did it myself.
Started in 2014 and continued on and off for about 2 years. Could have been done much quicker, but time constraints and other project commitments meant I could only work on this in spare time.
I’m not a Java developer – Blackboard Building Blocks are built using Java
I do have a background in web development and programming, just not Java. Still a learning curve.
Documentation is incomplete in parts – some things aren’t documented at all, others are missing some key points, though this is getting better
There was a bit of guesswork / trial and error involved, and trying to find other Building Block code that could be leveraged
Also the time constraints I mentioned before
If you’re wanting to develop a Building Block or integrate with Blackboard somehow – this is a great place to find the right people to talk with
This is the third year I’ve come to the Blackboard Conference. In 2014, I came for the Developer Conference as well, so picked up a few things from Scott Hurrey and Mark O’Neil as well as Shane and Wiley from All The Ducks (they develop Building Blocks and hold workshops – we got them to come to our university last year to give a workshop)
Documentation – while it has been incomplete in the past, it is getting better. Scott is really working to improve it and open to suggestions.
Find other building blocks – oscelot, github (will share these resources shortly)
Blackboard Community – forum there includes area for developers (formerly at EduGarage). A lot of activity there now.
Trial and error – I was self-taught in Java!
Will provide more info on these resources later for those interested
So after development and a lot of testing, finally was able to make the new Certificate tool available at Griffith early last month (July 2016)
Have migrated all certificates over from the Flash tool, so:
Less likelihood of compatibility issues now
Instructors can create their own certificates without our intervention or waiting times
It has a user interface for instructors to add certificates themselves
Can do:
Current date – i.e. the date the certificate it is viewed/printed
Cannot do:
Custom positioning – you need to follow a template, i.e. name, user ID, date have pre-determined positions in the template
Editing online – design needs to be created first then uploaded as an image file
Will explain more about the scores/date limitations in a moment.
First, though, a demo – easier to show you in demo
Demonstration: https://bblearn.griffith.edu.au/webapps/blackboard/content/listContentEditable.jsp?content_id=_2594803_1&course_id=_25761_1
Talk through instructions, including template and modified design
Show certificate
Explain limitations – date of printing, not date of completionDemonstrate Adaptive Release
You might have a test…
…and an adaptive release rule is then applied that checks the test score to determine whether or not to display the certificate
The adaptive release rule is able to check the test scores, but there is no direct line of communication between the certificate and the test.
It’s just like anything that uses adaptive release. You cannot get data from the dependencies to be used by the thing you’re releasing.
Explain this to avoid confusion – people think the certificate is related to the test. It is but it isn’t. Do the test and get a certificate – yes. But, from Blackboard’s perspective there’s another step to the process – that is the Adaptive Release Rule. Adaptive Release can check the test score, but the certificate cannot – no way of relaying that information forward.
Certificate can exist without a test and without an adaptive release rule.
Present certificate suits our needs well, but there is room for improvement.
Ideas for future enhancements – more of a wish list. No plans to include these just yet.
Building Block Tag libraries – shows you the tags recognised by that can be used in Building Blocks
Blackboard Community Forum – great place to ask questions on how to do something if you cannot find help in the documentation. I used this quite a bit. Helpful community. Developer posts used to be on EduGarage – now all on Bb Community
Oscelot Projects – people have posted Building Block projects here. A good place for inspiration or to take a peak at some code to build upon
GitHub – some Building Blocks here, too (e.g. QUT’s Tweaks). Search for “Building Block”
AllTheDucks -
Any questions?
My contact details again.Building Block is not presently posted online, but if you want to give it a try, get in touch with me.