During lectures, I always found myself unable to keep up with professors. Each course was a microcosm of each discipline. To merge in business meant some completely different from that which it meant in biology. I needed subject-specific knowledge, but I didn't have it. I needed a way to connect what I had learned in lecture with everything else I had been exposed to--readings, lectures, slides, handouts.
What it does
So, we decided to create Lecti. We wanted a smarter note-taking app that would combine lectures, readings, notes, videos, and everything else into one succinct portal. Even as students--including us--have started taking notes online, the notes themselves have stagnated. Lecti changes the fundamental character of notes. It takes them from disorganized, disconnected pieces and turns them into components that have relationships based on the very content that we are learning.
However, it was imperative to understand that not every person takes notes the same way. It’s impossible to create a UI that is just right for everyone. This is why we turned Lecti into an easy to use API: so that others would be able to create smart note-taking apps that piped multiple sources of data into an easy to read and appropriately annotated document.
How we built it
Lecti was written in Ruby, Sinatra as well as Google’s Natural Language Processing API. The front end for the testing and documentation was made using HTML, CSS, and good ol’ jQuery. The API is able to handle videos of lectures, your personal notes, and readings.
Challenges we ran into
This was the first Hackathon where most team members felt comfortable attempting to create a full-fledged product. Previously, most of us had only attended Hackathons to learn new skills or to meet new people, so understanding the lean workflow environment was pretty new to us. Furthermore, we didn’t each other well so it was pretty interesting navigating that dynamic.
Originally, we were going to create an in-browser web app in react because we had never used the language before and we wanted to learn more about the framework. We learned about state changes and data handling, but were ultimately overwhelmed by the complexity of the inter-component relationships. We still managed to create a pretty interesting UI that functioned somewhat well and looked nice, but we didn’t know how to integrate it well with our API. Despite deciding to not use it, we still learned a lot about React worked and gained valuable insight into how to diagnose front-end problems such as positioning and elements not doing what they’re supposed to be doing.
Accomplishments that we're proud of
We managed to get a working API with the ability to process notes and videos effectively as well as a presentable frontend where individuals could learn more about our API. We also managed to create something in React, which is more than any one of us had done in the framework prior to the hackathon, and we learned about pair-programming and its use in development and the associated pros and cons.
What we learned
We learned about machine learning algorithms through Google’s Natural Language Processing as well as how to use the React framework.
What's next for Lecti
We plan to continue development into a full blow web-app, but only after we gain a better understanding about React.