1 of 23

Open Source ‘Software Development’

< Seoeun Hong , Leah Durrett ,

Nicole Sosa , Rufaida Khan >

CSCI-UA 480 OSSD Spring 2023

[Oppia]

oppia.html

oppia.css

< Oppia provides a novel and engaging approach to online learning >

1

2

3

4

5

6

7

8

9

10

11

12

13

14

2 of 23

Oppia { introduction }

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

  • Oppia is a free and open-source online learning platform that aims to improve access to quality education worldwide for everyone.

  • Allows users to create and share interactive educational content and uses a conversational approach to learning. This approach provides learners immediate feedback, making the learning experience more engaging and effective.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

3 of 23

Oppia { why? }

  • A humanitarian project that was meaningful to us
  • Community is:
    • Friendly - welcoming to new contributors
    • Active - get responses within a day
    • Organized - issues are assigned, no one takes assigned issues

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

4 of 23

Oppia { interaction }

oppia.html

oppia.css

Communication via GitHub issues and discussion posts

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

5 of 23

Oppia { timeline }

oppia.html

oppia.css

Installation

Bug Reports

Feature Requests

Code Contributions

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

6 of 23

Oppia { timeline: milestones }

oppia.html

oppia.css

Familiarizing

Road Block

Eureka!

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

7 of 23

Oppia { familiarizing: GitHub }

Looking around the Oppia repository

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

1

2

3

4

5

6

7

8

9

10

11

12

13

14

8 of 23

Oppia { familiarizing: issues }

Looking around the Oppia repository

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

1

2

3

4

5

6

7

8

9

10

11

12

13

14

9 of 23

Oppia { familiarizing: installation }

Installing Oppia to our local machines

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

1

2

3

4

5

6

7

8

9

10

11

12

13

14

10 of 23

Oppia { familiarizing: Codebase/style }

Looking around Oppia’s codebase and coding style

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

1

2

3

4

5

6

7

8

9

10

11

12

13

14

11 of 23

Oppia { road blocks }

oppia.html

oppia.css

  1. Installation
  2. Took a week and a half �
  3. Was a challenge for Mac M1 chip and Windows�
  4. Only occasionally works in Windows if at all!

2. Finding the code

  • Huge Code base�
  • Code for one element spanned across multiple files�
  • Was difficult to pinpoint what element was causing the issue

CSCI-UA 480 OSSD Spring 2023

3. Finding web pages

  • Difficulty accessing certain pages on Oppia server�
  • Installation document didn’t provide any guidance on how to access them�
  • Issues did not have proper steps to reproduce certain errors either

1

2

3

4

5

6

7

8

9

10

11

12

13

14

12 of 23

Oppia { eureka: contributions }

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

Feature Request

Gender-Neutral Profile Image

Feature Request

Header Text Not Readable In Dark Mode

Code Contribution

Add Style to Help link

Bug Report

Placeholder text cuts off in search bar

Bug Report

Preferred language search not working

Feature Request

Replace "Placeholder Text" with "Enter Answer "

Bug Report

Text misaligned when zoomed out

Feature Request

Inconsistent navigation buttons in lesson

Bug Report

Link to Example Code for CSS is Broken

Bug Report

Broken link in 'Contributing code to Oppia'

Code Contribution

Align buttons and text sub-topic section

Bug Report

Accessibility issue in Exploration Editor tab

Code Contribution

Fixed the ARIA attribute errors in exploration editor page

Code Contribution

Fixed the broken link in the coding style guide

1

2

3

4

5

6

7

8

9

10

11

12

13

14

13 of 23

Oppia { eureka: contributions }

  • Feature Requests Example
    • Propose Gender Neutral Profile Image:

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

14 of 23

Oppia { eureka: contributions }

  • Bug Report Issues:
    • Pinpointed UI bugs such as:

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15 of 23

Oppia { eureka: contributions }

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

Our first code contribution (merged):

1

2

3

4

5

6

7

8

9

10

11

12

13

14

16 of 23

Oppia { eureka: contributions }

oppia.html

oppia.css

Our fourth code contribution (pending):

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

17 of 23

Oppia { learning experience }

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

  • Installing this project
  • Navigating the huge and complex codebase
  • How to report issues (Bug/Feature) and request to be assigned issues in a proper way
  • How to ask for help from other contributors or maintainers if we are stuck or do not understand what they are asking for
  • Being transparent with your skill-level

- Being respectful of each other while communicating

Group 5

1

2

3

4

5

6

7

8

9

10

11

12

13

14

18 of 23

Oppia { learning experience }

oppia.html

oppia.css

Rufaida

Nicole

Leah

Seoeun

Reading code takes time, especially when there are no comments

Taught me not to give up quickly

Persistence and patience is key to solving any issue

Learning about linting tools to test code contributions

Asking for help from maintainer when you are stuck

�Communication & Patience is extremely important

Willingness to learn, ask questions

Utilizing everyone’s experiences well

Communicating with maintainers and contributors

Pair coding

Web development overall

Bash command and local machine itself

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

19 of 23

Oppia { best moments: group }

oppia.html

oppia.css

  • INSTALLATION!�
  • Our first contribution�
  • Working together in a friendly, positive, kind and calming environment, FREE lollipops

(we loved working in all girls team 💗)

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

20 of 23

Oppia { best moments: individual }

oppia.css

oppia.html

Rufaida

Nicole

Leah

Seoeun

Installation Success and seeing localhost run

Being assigned an issue that I assumed the maintainers would handle themselves!

Finding the Documentation Page for navigating Oppia pages was a major win!

When first code contribution get merged after communicating with maintainers

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

21 of 23

Oppia { hindsight }

CSCI-UA 480 OSSD Spring 2023

oppia.html

oppia.css

  • Yes, we do think it was a good idea to pick this project
  • We were able to contribute several ideas to Oppia (i.e. gender neutral profile icon & web accessibility)
  • We were met with a warm welcome and were encouraged by the maintainers throughout! (@seanlip & @U8NWXD)
  • We got quick responses from the community, and they were patient and kind in explaining themselves to us
  • We would definitely pick this project again! :)

Group 5

1

2

3

4

5

6

7

8

9

10

11

12

13

14

22 of 23

Oppia { future }

oppia.html

oppia.css

Rufaida

Nicole

Leah

Seoeun

I will not continue contributing to Oppia on my own because my computer runs very slowly with Oppia and it takes quite a while to navigate the code base.

I will continue contributing if Oppia continues running on my machine without any issues and if there are feasible tasks I can handle within a reasonable time frame.

I will not be contributing to Oppia in the future, simply because the installation ultimately failed for my device, I am otherwise interested in the project!

I will continue contributing to Oppia if they introduce new features that I’m interested in, such as data analysis, instead of focusing on web-dev features we’ve worked on so far

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14

23 of 23

< Thank you >

oppia.html

oppia.css

CSCI-UA 480 OSSD Spring 2023

1

2

3

4

5

6

7

8

9

10

11

12

13

14