← Home

Duke University's

Code+

co-curricular program

1 / 42

promoting undergraduate

Diversity / Equity / Inclusion

2 / 42

Link to presentation: https://duke.is/b9tbe

3 / 42

Kyle Skrinak

https://www.drupal.org/u/screenack

Senior Manager, I.T., Duke Web Services Development and Support

Duke University

https://people.duke.edu/~kds38

4 / 42

Our team builds, hosts, and maintains over 250 Drupal websites, including multisite, headless, and other websites and applications.

5 / 42

What is Code+?

6 / 42
7 / 42

Origins for the Drupal module project

8 / 42
  • A re-org at Duke
  • Office of Information Technology's call for Code+ projects
  • A mutually-beneficial project
    • Supports the Code+ team, Drupal, Open Source, and Duke
  • Duke maintains an internally-developed module on D.O. in need of attention
  • A Duke need: integrate Grouper with Shibboleth
9 / 42

A Code+ Project is born

10 / 42
  • Draft and submit my proposal
  • Lots of edits
  • Code+ administrators accepted my proposal
11 / 42

A Code+ Project is born

12 / 42
Drupal Module for Software Design and Development

The Drupal open-source software platform provides an opportunity for those who wish to design, develop, release, and finally maintain a non-commercial software project. A team of students will work with Duke's Office of Information Technology and other partners across campus to develop a Drupal module to extend the functionality of the existing framework to create an application. Students will work with Drupal 9 to extend Symfony's PHP object model paradigm. This allows students to work within a fully compliant Object-Oriented Programming, or OOP, paradigm.

13 / 42

A Code+ Project is Born

14 / 42

workflow

15 / 42

A Code+ Project is Born

16 / 42

workflow

17 / 42

A Code+ Project is Born

18 / 42

workflow

19 / 42

A Code+ Project is Born

20 / 42

workflow

21 / 42

A Code+ Project is Born

22 / 42

workflow

23 / 42

A Code+ Project is Born

24 / 42

workflow

25 / 42

Project Parameters

26 / 42
  • Code+ administrators assigns five students to project
  • We discuss project, training, and software requirements
    • Lando for development.
    • Identify common means for collaboration.
  • Daily check-in and check-out on Microsoft Teams and Zoom
    • We had a mix of on-campus and remote students across time zones.
    • Encourage team collaboration on a standard platform.
27 / 42

Project Parameters

28 / 42
  • Respect each Code+ team's individual working style
  • Regular checkin and feedback from leadership
  • Encourage independence and team ownership
  • Be approachable and available
29 / 42

Project Parameters

30 / 42
  • Code+ administrators assigns five students to project
  • A project manager (Code+ administrator)
  • Me: Project director, guiding direction, providing mentoring, and supporting the team
  • Supporting partners from OIT
31 / 42

Project Successes

32 / 42
  • A dedicated, highly-talented team
  • Students developed knowledge in our software ecosystem
  • Students developed professional development and communication skills
  • Project deliverable: A Drupal module published on Drupal.org
  • Open source software contributions
  • Supporting undergraduates
33 / 42

Project Outcomes

34 / 42
  • BasicShib Module Requirements and Learning Curve
  • Module Maintenance Updates
  • New Features Development
  • Testing and Quality Assurance
  • Team collaboration improvements
35 / 42

Challenges, Learnings, and Next Steps

36 / 42
  • Software development in an enterprise environment
  • Open source community contribution
  • Time management and project planning
  • Professional communication and mentoring
37 / 42

Challenges, Learnings, and Next Steps

38 / 42
  • Difficulty in planning time for mentoring and team support
  • Communication in a multi-timezone environment with MS Teams and Zoom
  • Complexity of the BasicShib module architecture
  • Team changes during the summer
39 / 42
  • A re-org at Duke
  • Office of Information Technology's call for Code+ projects
  • A mutually-beneficial project
    • Supports the Code+ team, Drupal, Open Source, and Duke
40 / 42

Questions?

41 / 42

Thank you!

42 / 42