At first we didn't really know what topic at HackaTUM would be the most interesting for us, and because of this, we brainstormed about our own everyday problems that could be solved using an app. Though it was only a very basic concept outline in the beginning, when we started sketching some mock-ups and thinking about possible use cases, we discovered a ton of potential in our idea.
What it does
The general idea behind our app is having a way of easily organizing assignments and other tasks students encounter in school and in university. But there are hundreds if not thousands of those timetable and homework planning apps out there. So what makes our approach unique? 1. A strong focus on a UI that makes handling your tasks feel effortless and great to look at. 2. Our custom made task-organizing algorithm that handles distributing your study workload evenly across your week. And because we're students ourselves, it's obvious that we know how much everybody likes skipping a studying session. We have you covered here, too! When the ISP app tells you that doing your maths homework on a sunny Saturday afternoon seems like a good idea, you have the ability to decline this. But of course just declining every session won't work either, our algorithm remembers that you still have some work to do for maths. When calculating the optimal work distribution for the next days, it will just give you another chance to catch up on what you missed.
How we built it
Challenges we ran into
Kotlin has some aspects where a really different approach on certain things is taken than in Java. So in the beginning of working with it, we didn't really feel as productive as we could have been, simply because we had to google more things than normal, especially syntax and best-practice questions. This certainly takes its time, but I personally think that after this rather short learning curve I feel really comfortable using the language. Especially because normally annoying things like the thousands of
Button button = (Button) findViewById(...) lines every Android developer loves are simply not necessary in Kotlin. A simple
button.setText(...) or whatever else is enough.
Accomplishments that we're proud of
We are proud of the quick progress we have been making the last two days, really from drawing sketches on paper to having a functional app on our phones in literally a few days. And we still have a lot of ideas we can implement, and one day it shall be our primary app for ourselves to deal with university tasks.
What we learned
"Real" collaboration of more than just one person on a software project. We have never really done this before, but everything arranged itself quite easily. After some time, everybody hat their own kind of "expertise" about the deeper technical details of the app. Samuel cared more for the back-end part with data persistence, data processing and similar things, while Jacob cared about having a well-designed and logical user interface. This worked out really well and like this we could experience how much faster development goes when you can basically develop front-end and back-end simultaneously, and in the meantime think about the necessary interfaces in between them.
What's next for ISP
We certainly will try to add enough features and polishing everything to a level where we can confidently publish the app on the Play Store. Of course the development won't progress as fast as it did during hackaTUM but still we will pursue this idea further. It is a welcoming opportunity to help other students organize their student life.