Initially our team had two ideas. The first was to create a repository of lectures and associated data (lecturer, attendees, videos, slides) and to provide a tool for university lectures to add their resources and lectures very easily. The prospect of having access to this data spawned other ideas but the one we settled on was a topic based voting application that would allow users to vote the best content for a topic to the top.
We quickly felt that we had bitten off more than we could chew so fell back to the repository for lectures application. We chose Rails for this since it is represented a reasonably classic CRUD application. John Mildinhall, our User Centred Design Specialist designed a beautiful workflow for the application that Vince and I proceeded to butcher.
We settled initially on ‘Knowledge is Free Again’ shortening this to kifa. We were reliably informed this was a racist term in some parts of the world so Vince changed it to kif, although he didn’t realise this is hash in Morocco.
By the end of the day we had a semi working application that we were able to demonstrate to the other teams but with much functionality incomplete. This was somewhat disappointing given the purity of John’s vision.
For us the idea is still a good one. Knowledge exists in silos in different universities and there isn’t a good way to link students and lecturers studying the same topics to resources. We felt that the application would be most useful for building other applications on top of it though. With an open JSON API if the application were used it would provide a rich data source on lectures and seminars around the world that developers could use to create all kinds of applications.
The source for the project is available on GitHub and the somewhat half-baked demo is available at http://kifa.herokuapp.com.
Have an update or suggestion for this article? You can edit it here and send me a pull request.
Using template files in Vim
Vim templates or skeletons, allow you to specify a template to be used for new files with a certain extension.
Rolling deployments with Kubernetes
How to deploy a new version of an image into a Kubernetes cluster
Getting started with Kubernetes
How to get started with using Kubernetes on a local machine using minikube