Most of us remember it well. Long hours spent in servitude to a series of drop-down menus and enrolment baskets, slavishly trying to get that last tutorial out of Friday's. Beta interviewed some students who are working on Rectangles, a project to take the grunt work away in exchange for course credit. They already have a working demo.
B: Why did you choose this project?
Matt: When we enrol, we don't want to figure out on pen and paper what classes we should pick.
Nik: We don't want to compute stuff that can be done by a computer.
Matt: Essentially, it's a function we wish was in MyUNSW. A user goes to the website, enters their subjects and clicks "Generate", and it'll either give them results or tell them that their subject is full or has a clash.
Nik: We generate all possible timetables and then sort them by things like "most sleep in time" or "most free afternoon time". In that way you can pick off the best timetable.
|
|
B: How do you do it?
Matt: The old way was that I would go to timetable.unsw.edu.au and screen-scrape all the data, then I'd manually work it into a useful format and start permutating. Now we get given data from the University's database. When someone puts in some subjects, we ask the database for some nice, well-formatted, correct data and do a similar thing. The data's not there for next session's enrolments yet, but it will be as soon as it's finalised.
B: You changed systems?
Matt: The combinations code has changed languages. It used to be in PHP, now it's in C.
Nik: It's much faster now.
Matt: With the old one, we didn't care how fast it was. I used to take about 6 minutes to do 10,000 queries, and now I can do hundreds of thousands per second.
B: Have people been using it?
Matt: We had about 1000 different users per week for a few weeks when the timetable for session 2 came out. People actually started googling us. That was like a "hey, we exist" moment. We had a surprising number of people doing law, but mostly engineering. It wasn't all comp people by any means.
B: How did you get support from the school?
Matt: It was a bit of a hobby, but some people used it in session 1 and then even more when we improved it for session 2. I talked to Brad and he suggested a COMP3901/3902 special project.
|
|
B: Can Beta's readers do anything to help?
Nik: We want to improve on what we have, so we need general feedback.
Matt: We would like some people to actually meet with us, but just feedback on the website is okay. There's a button in the top-right corner. Also, if anyone's interested in helping out. At the moment it's a 2-man effort, and there's plenty we can't do because of that. The skillset involved is C/C++ for the backend.
Nik: And HTML/CSS/Javascript/etc for the frontend.
Matt: We have data on what subjects get searched for if anyone wants it for statistical analysis. I imagine it'd be useful to find out what courses people can't do because of clashes.
The Rectangles demo.
|