In UCSD iClickers are a necessity for some classes but iClickers cost around $60 and being a piece of harware, are easy to lose or misplace. We decided that there was a reason to improve and innovate in this area and
What it does
We built a replacement for iClickers that expands and improves upon the idea. Like iClickers it allows professors to create questions and get responses to those questions but it also has the capability to store the actual question text, should a professor input it. With that information, it not only becomes a tool for classroom participation but also for out of class studying as students can look back in their history and review previous clicker questions.
How we built it
It was built with a front end of swift for the iOS app and a front of HTML/CSS/JS for the web portion. It's a combination of Web and iOS requiring a third party server and database. The back end server is written in Node with express as the framework and mongoDB for the database.
Challenges we ran into
Some challenges we ran into were mongoDB database handling because none of us were too familiar with mongoDB so learning node's mongoose package and understanding how it's schema system worked with the actual JSONs that were stored in the database took a while. Additionallly, creating a workable and intuitive UI took a significant portion of our time as well because of the sheer amount of design decisions that went into the overall project.
Accomplishments that we're proud of
We managed to integrate an iOS app seamlessly with a third party Node server and that was really powerful because that means we can now use the same API we built for iOS processing for other device specific processing as well. Additionally, on the iOS side, we are very satisfied with the visual appeal and simplicity of the app.
What we learned
We learned, on a technical level, how to work with mongoDB and Node and create a multiplatform API for database handling. On the mobile side, we learned how to properly post JSON via http requests written in Swift.
What's next for Lecture.io
Take it to Android! Provide a professor facing mobile app. Finish the click history study tools. There's a lot to be done and if you decide to help us, we can make it happen!