• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Letting the lunatics run the asylum - students developing code for the production environment
 

Letting the lunatics run the asylum - students developing code for the production environment

on

  • 1,316 views

This presentation (delivered in Las Vegas in July 2011 at the Blackboard Developers Conference) reflects on the work of 3 students who spent a summer learning and developing building blocks. Their ...

This presentation (delivered in Las Vegas in July 2011 at the Blackboard Developers Conference) reflects on the work of 3 students who spent a summer learning and developing building blocks. Their project topics were provided by faculty. The experience highlights problems faced by novice building block developers and how to overcome these. It also provides suggestions for suitable and unsuitable test environments and ends with pointers for what constitutes a realistic (deliverable and maintainable) project, some of which come directly from the mouths of the students.

Statistics

Views

Total Views
1,316
Views on SlideShare
1,316
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
1

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • The actual presentation includes linked video clips of the students talking. These are not included here. Instead you see strange blank extra placeholder slides - presumably what slideshare does when it can't add the links :-) Hope that's not too annoying. Malcolm.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • This presentation reflects on the work of 3 undergraduate students who spent a summer learning and developing building blocks. Their project topics were provided by faculty. The experience highlights problems faced by novice building block developers and how to overcome these. It also provides suggestions for suitable and unsuitable test environments and ends with pointers for what constitutes a realistic (deliverable and maintainable) project, some of which come directly from the mouths of the students.
  • Warn the audience to watch what they say! Questions and video at end must not be recorded.
  • Who am I – someone who chose to code Blackboard stuff – to say who’s mad!!!
  • This is what some sys admins looked like when they first heard this idea!
  • Asking for the moon?
  • Students only know the bits of Blackboard that their lecturers have made them useFor example most don’t know that there is a course control panel
  • Really the heroes of this presentation/project
  • Used Google Wave (RIP)Allows them to ask for more information. Wave regularly monitored by members of the team. Ultimately they voted on things they wanted to do – a form of audit trail too!
  • 1. Content Item: Expanding Content 2. Course Tool: Photo Roster 3. Custom Content: FlashCard Quiz 4. Course and Portal Twitter module 5. Course Tool: Manage Contacts
  • Highly variable. Some very sparseFor sparse read skeletal, written by lecturers, very different to the detailed functional specs students used in previous CS projects
  • Balsamiq Mockups – great tool
  • Scope Creep – unequal power relations – hard for students to say no to staff – needs careful management
  • Testing on Load- balanced systems?
  • Weblogs = we know what you’re doing!
  • Log UI needs to be sortable before it is usable
  • Blackboard QA been at work?Usernames and passwordsWhy so closed?
  • Initially to share docs, then code samples, finally code!
  • Students often don’t use the same vocabulary as the manual to describe interface components
  • Clicking the More button triggers JavaScript that changes the link text from More to Less and toggles the visibility of the Hidden DIV.
  • Bug which meant you couldn’t edit content which had unclosed divs– so you couldn’t fix the problem – needed to be fixed – change pattern magic codeIs exposing the stack trace a security concern? Not in this case methinks!
  • Note data have been anonimised.
  • GlobalSettings too – properties file
  • Need dirty data for testing – hard to create blocked users. Some decisions took a long time – many committees didn’t meet over Summer!

Letting the lunatics run the asylum - students developing code for the production environment Letting the lunatics run the asylum - students developing code for the production environment Presentation Transcript

  • 12th July 2011 8:30 am Venetian Congress Center - Titian 2303
    Letting the lunatics run the asylum - students developing code forthe production environment
    DrMalcolm MurrayDurham University, UK
  • Slides freely available…
    http://www.slideshare.net/malcolmmurray
  • This session is being recorded…
    http://www.audioh.com/projects/recorded_delivery.html
  • Letting the lunatics run the asylum
    http://commons.wikimedia.org/wiki/File:County_Insane_Asylum,_Milwaukee.jpg
  • Students developing code for the production environment
    http://www.vinyltap.co.uk/shop/item/510008517750895.aspx
  • Sound pedagogy
    Learning by doing
    Biggs’ 3 Levels of Teaching
    http://www.johnbiggs.com.au/
    http://www.flickr.com/photos/david_jones/3302564430
  • http://www.flickr.com/photos/yeimaya/21271886/
    Projects
  • Selecting Projects
    Previous trial allowed students to design their own projects – not very successful
    This time faculty submitted bids for student time via an open competition
    Students could choose from the list of bids which met the criteria
  • Aims of the Development Fund
    To enhance the learning and teaching experiences of Durham students
    To develop high quality electronic learning objects which enhance the learning experience of students in the University
    To enhance the employability of students by providing opportunities for summer placements working with staff to design and develop the ELOs
  • Potential Developers
    2nd & 3rd Year Computer Science undergraduates
    Seeking Summer Employment
    Some Java Experience
    Only used Bb as a Student
    Never written a Building Block
    Limited Supervisor Availability
    http://www.zazzle.co.uk/no_crying_in_computer_science_mug-168267831934931190
  • The “Inmates”
    Matthew
    Chris
    Daniel
  • Successful Projects
  • Functional Specs
  • Learning from the Students
  • Initial Issues with the Projects
    Required iterative/agile development
    Some projects very ambitious
    Threat of scope creep
  • What faculty are asking for…
    …vs. what we can realistically build
    http://www.facebook.com/group.php?gid=235422146882
    http://www.flickr.com/photos/penguinbush/2768719983
  • http://www.flickr.com/photos/natej/3251899986/in/photostream/
    Test Environment
  • Test Environment
    Gave each student a clean test server
    - virtual installs (on VMWare)
    Need Blackboard Sys Admin accounts
    Next time, may try VirtualBox
  • Security Concerns
    Totally isolated from production
    Ensure you use different passwords!
    Remember config files store these in plain text
    Server and database only accessible on-site
    Clean server – no “real” users or courses
    Forbid the creation of accounts for friends
    Draw their attention to the weblogs
  • Access all Areas?
    Definitely Not
    Root access – use sudo
    Didn’t but would next time
    Command line access to server
    Logs, config and property files, etc.
    Restarting the server
    Still considering
    Database access – more need in 9.1?
  • Think pink…
  • IDE
    Mix of Netbeans and Eclipse
    Gave them the SDK and JARs
    Used the devcon webinars to set it up
  • http://www.flickr.com/photos/23954607@N03/2325477734/
    Scaffolding
  • Supporting Novice Developers
    Provided a series of demo building blocks
    Portal Module
    Course Tool
    Custom Content Type
    Team work (peer support)
    Project Management
  • Documentation
    // TODO: DEVELOPER INPUT NEEDED HERE
    http://www.spreadshirt.co.uk/access-denied-2c-underwear-C4408A14152441
  • Dropbox was invaluable
  • New to Blackboard Development
    Do you speak Manual/TagLib?
  • http://www.flickr.com/photos/m0php/3862856338
    Output
  • Expanding Content
  • How It Works
    Title (and Title Colour)
    Icon
    JavaScript
    Hidden DIV
    Body Text
  • Production Robustness
  • Support for Future Versions
    Taking advantage of Blackboard 9.1 CSS
  • More Complex Examples
  • Using the bbNG Tag Library
    Steep learning curve
    Few quirks with inventoryLists
  • Entitlement & Persistence
    Course Photo Roster
    Staff Info
    Who can see the photos?
    Course Role and Institutional Role Checks
    Persisting User Preferences
    User Registry
  • Scalability
    Load photos from Campus Card database
    Time-out Risk?
  • Implementation Issues
    Confusion – availability & row status
    Each photo took 0.3 seconds to load
    Copy them nightly as Avatar images
    Discovered these were insecure
    Not resolved until after project had ended
  • FlashCards: Coming Unstuck
  • Clash of the Libraries
    JavaScript libraries – jQuery & ProtoType
    Developed initially outside Blackboard
    Browser Compatibility Issues
    Scope Creep – Guilty!
  • http://www.flickr.com/photos/minette_layne/2306348177/sizes/l/in/photostream/
    Reflection
  • Students’ Reflections
  • Recommendations
    Success requires staff commitment & planning
    Select projects and students carefully
    Early steps need extensive scaffolding
    Gets students familiar with thinking in Blackboard
    Try it: very rewarding, we will do it again!
  • Thank You
    To you – for attending this talk
    To Matthew, Chris & Daniel – for being fun to work with
    To all the staff in the Learning Technologies Team and the Technology Enhanced Learning Group - who provided support, time & advice
  • Questions?
    Get in touch:
    malcolm.murray@durham.ac.uk
    @learntechdurham
    @malcolmmurray
    http://www.dur.ac.uk/lt.team/blog/
    http://building-blocks-developer.com/
  • Please provide feedback for this session on the back of used dollar bills sent to the author or by emailingDevConFeedback@blackboard.com.
    The title of this session is:
    Letting the lunatics run the asylum