The Problem We’re Solving

Our Australian University system is proprietary, and bureaucratic. Specifically, course structures are internally stored making the subject selection process difficult and effortful. From this stems the problem that all students encounter semester after semester: finding a subject they will actually enjoy without spending the time and effort looking for the subject.

Our Target Audience

Our solution is aimed at helping university students transform their perception of the subject selection process from being laborious and time consuming to personalised and carefree.

Our Solution

We have developed “clever course” – a program that will simplify the subject selection process by recommending to the user subjects to take based on the following criterion:

  • The course they study and their year
  • The subjects they have completed
  • Topics of Interests based on their student profile
  • Key words they enter in the program’s search function

The recommendation lists will show the user:

  • Their past performance in the subjects
  • The similarity of possible subjects to already completed subjects (comparing faculty, unit code, description keywords etc.)
  • Their interest in a range of random units that we ask them to rate on a scale

How Our Solution Works

  • User will input subjects that have been completed
  • The user is then presented with a list of random units and is requested to rate the units depending on their level of interest.
  • Once subjects have been chosen an algorithm will search through all possible units to identify if any previously taken subjects correspond to prerequisites for future subjects.
  • Using the student’s completed units, their marks and their interest in the random unit. A function sorts through the available units and rates each unit based on the users data. The top rated units are then displayed to the user.
  • Users are then able to tailor the sort function to place more importance on specific features such as increasing their Weighted Average Mark. This is accomplished through changing the function to prioritise the highest marks as the primary filter.

How We Implemented Our Solution

  1. Web-scrape unit guide from UNSW – sample set of 1000 units
  2. The data base fields are: unit code, unit name, faculty, school, and list of prerequisites. The list of prerequisites is organised so that multiple corresponding prerequisites will be taken into account.
  3. Implement a search function which allows for an interaction between the user and the data.
  4. Users can navigate the database using a search bar and add their completed subjects to an array.
  5. The array is then used to query the database using ‘if’ statements in python. This allows for the program to handle cases with multiple prerequisites.
  6. Without sorting, the code will automatically display in alphanumeric order. All the units with matching prerequisites and all of the units with no prerequisites.
  7. The first sorting function deals with recommendations based on academic performance. The user inputs their marks to the system and this creates a weighted list. The matching units with a grade of ‘High Distinction’ will appear on top of the list.
  8. The second sort function allows the user to target a specific faulty or school.
  9. Our design is user centric and is based on the needs of a mobile device dependent population

Our Lessons Learned

  • You can’t learn an entirely new language in a day. We spent roughly 8 hours talking about what possible ideas we could do but we should have focused on what our current skills were and tailoring the ideas to match.
  • Hackathons shouldn’t start with a collection of ideas for 5 people to debate over. We should start with a clear goal and have had the discussion about what to work on well before the date allowing us to prepare properly. .
  • There were issues with cross language integration and we quickly realised that we could avoid this by using a language that integrated what we needed as one. So rather than combining javascript, sql and php, just focus on python and alter the data to work for us.

The Future clever course

As the program is implemented across universities Australia wide, clever course will evolve in how it recommends subjects through the consideration of:

  • Student ratings based on unit of study surveys
  • Discovery page of popular subjects
  • Integrate the program into the University enrolment procedure

Although we have basic functionality, our aim is to create an intuitive program that a user uploads an academic record with the system outputing the highest recommended units to choose for the following semester. This recommendation is based on a mixture of marks, faculty, and common theme interests. The technology will identify key words in unit names and recommend similar units based on unit descriptions in other faculty


Check out our GitHub repo

Built With

Share this project: