E-Vory Bring everyone together

About E-Vory

A programme optimizer for anyone who has to sit through a long day of presentations.

What E-Vory does

When several presentations run in parallel rooms, the people who have to attend them — a jury, a review panel, a set of supervisors, a bench of judges — usually end up scattered across the day. They sit for one presentation at nine, wait two hours, cross the building for another at noon, and come back at four.

E-Vory takes the timetable you already have and proposes a better order for it. In a timetable that already has its times, the presentations and the time slots stay as they are; what changes is which presentation sits in which slot, and, if you allow it, which room it is in. The aim is simple: everyone's sessions should sit close together, so nobody waits around for a session three hours away.

While it re-orders, E-Vory holds to a few rules:

  • Nobody is in two rooms at the same moment.
  • Nobody is scheduled outside the hours they said they could attend.
  • Moving between rooms needs at least one presentation of slack, so nobody has to sprint.
  • Idle gaps, room changes and broken time preferences are kept to a minimum.
  • Presentations with the same first panel member — usually the main supervisor — sit next to each other when nothing more important is at stake.

You get a report showing the proposed programme, what moved, and each person's day before and after, plus the new timetable as a spreadsheet in the shape of the one you loaded — and you decide whether to use it. You can choose which columns that spreadsheet carries, rename them and put them in order, and the last few runs for the same files stay on your device so you can reopen one later. E-Vory proposes; it never publishes, sends or commits anything on your behalf.

A programme with no times yet

A programme does not need start times. Give E-Vory the hours the day runs and how long a presentation takes, and it works the times out as part of the plan. Every start between opening and closing is a slot it may use or leave empty, so someone who is free only in the afternoon still gets an afternoon slot, while each room's day is kept free of needless holes.

The break can be fixed at a set time, or left to the plan to place, at the same time in every room or at a different time in each, within the shortest and longest length you allow. Times already in the sheet are kept. If the day is too short to hold everyone, E-Vory says how many did not fit rather than running late.

How many rooms

A plain list of presentations does not say how many rooms it needs. E-Vory tries one room first and opens another only for a reason: the day is too short to hold the whole list, or the hours people gave cannot all be kept with presentations running one after another. It works the second out exactly rather than guessing, so a list that fits in one room stays in one room.

You set how many rooms you can actually book. The rooms come out with about the same number of presentations each, and can keep each main supervisor's presentations in the same room. If even that many rooms cannot fit everyone inside the hours they gave, the report names who is left over. Rooms that your sheet already separates are left as they are.

Who it is for

E-Vory was written for university thesis defences, but nothing in it is specific to universities. It works wherever a group of people has to attend a series of presentations spread over parallel rooms:

  • Thesis and dissertation defences, vivas, qualifying exams
  • Student research days, poster sessions and science fairs
  • Competition juries, hackathon and pitch-day judging
  • Auditions, recitals and portfolio reviews
  • Conference parallel tracks and session chairs
  • Interview panels and selection boards

A word on wording. E-Vory says panel member for anyone who has to attend a presentation, and presenter for the person giving it. Call them examiners, judges, jurors, supervisors, reviewers or teachers in your own context — E-Vory only needs to know who has to be in the room, and treats every name the same way.

Where it came from

E-Vory started as a small set of Python scripts written for private use. They did the job, but they only ran on the one computer that had Python, the solver and the credentials installed on it. Preparing a programme meant being at that machine.

This is the same tool rebuilt to run in a browser instead, so it no longer depends on any particular computer. It is free, and the source is public. The author uses it too — for real programmes, which is the main reason it keeps improving.

How it works

Re-ordering a programme by hand is guesswork; past a dozen presentations there are more arrangements than anyone can check. E-Vory writes the timetable out as a mathematical optimisation problem — every rule above becomes a constraint or a cost — and hands it to a solver, which searches for the arrangement with the lowest total cost it can find in the time you allow.

  • Spreadsheets are read in the page by SheetJS, whether they come from your computer or, with From Google Drive™, straight from your Drive through Google's own file picker.
  • The optimisation is solved by HiGHS, compiled to WebAssembly and run in a background thread so the page stays responsive.
  • The search starts from your current programme when that already keeps every rule, and otherwise from a plan E-Vory builds and improves first. If the time limit cuts the search short, the proposal is never worse than that starting point.

All of this happens on your device. There is no server doing the work, no queue, and nothing to sign up for — which is also why your files never leave your computer. See the Privacy page for exactly what is stored and where.

What it deliberately does not do

  • It does not stretch the day or go past the rooms you have. Suggested times stay between the opening and closing you set, and E-Vory never opens more rooms than you say you can book. When everything cannot fit, it tells you who is left over instead of quietly dropping them or running late.
  • It does not decide for you. The result is a proposal in a report. Nothing is sent to anyone, and no programme is changed anywhere.
  • It does not keep accounts. There is no login, no profile and no shared workspace. Picking a file from Google Drive signs you in to Google, not to E-Vory, and gives it that one file and nothing else in your Drive.
  • It does not always find the perfect answer. On a large programme the solver may run out of time and return the best arrangement it found. The report says so when that happens.

Free and open source

E-Vory is free to use, with no accounts, no limits and no paid tier. The source code is published under the MIT License at github.com/frianasoa/evory, so you can read it, check the privacy claims on this site for yourself, run it on your own machine, or host your own copy.

Feedback and problems

Bug reports, questions and suggestions are welcome as issues on GitHub. A programme that E-Vory reads badly is the most useful kind of report — though please strip or replace real names before attaching a file, since issues are public.