Attendance
Attendance is a self-initiated project designed to provide a virtual attendance sheet for skaters while simplifying rental payments and the overall planning and management of an ice rink. It is designed to automatically coordinate groups of more than 20 people who often do not know or trust one another, yet share a common interest in enjoying skating together. The system consists of the IceApp.cz administration platform, a companion Android application and mobile Web application for skaters, and a tablet application that serves as a virtual attendance sheet. The entire registration process is intentionally built around email-based communication, ensuring broad accessibility and familiarity across the skating community. Skaters can select the dates they are interested in and check their current credit balance through either the Android or Web application. Based on their selected dates, the system automatically sends several email notifications related to registration and payment. When skaters arrive at the rink, the system automatically loads the list of registered skaters onto several synchronized tablet devices according to the current time. The attendance process is designed to be both fast and secure. Skaters can simply be selected from the list, while those who are not listed can be checked in manually using their credentials. In such cases, the administrator receives an email notification containing the exact order in which skaters entered the ice without completing the required payment. Credit can be topped up through the IceApp.cz administration platform after the administrator receives a payment in the rink’s bank account. Alternatively, when accepting cash from a skater, the administrator can generate a QR code using the Android application. The skater then scans this QR code using their own Android device, and the credit is added to their account. In the latter case, every credit change is also logged locally in the skater’s phone database. This provides an additional record that can be used to resolve potential discrepancies or issues caused by server-side database failures.
Open GitHub repository Open Documentation
TrainAlert
TrainAlert is the first commercial project where I designed and developed a complete frontend part of the system from scratch as the sole frontend developer. The project is a railway IT system designed for train drivers to monitor their current journey and receive notifications about important events along the route. The system consists of an external GPS sensor, an application server, an offline map server, and a portable screen-based mobile device. The Android application monitors the train’s current location and notifies the driver about nearby points of interest displayed on the map. It provides voice navigation, displays warning messages and graphics, and plays warning sounds. TrainAlert integrates with external railway systems, allowing it to provide real-time information about the train’s operational status according to the timetable, including upcoming railway stations, arrival times, and current delays. The application also monitors button presses at request stops and alerts the train driver at the appropriate moment if the train should pass the station without stopping.
Open Documentation
Dynamic Security Policy Enforcement on Android
This work proposes a system for the dynamic enforcement of access rights on Android. The system can repackage suspicious applications so that access to selected private data is restricted from the outside world. It intercepts system calls using the Aurasium framework and introduces an innovative approach for tracking information flows from privacy-sensitive sources using a tainting mechanism without requiring administrator privileges. File-level and data-level taint propagation, as well as policy enforcement based on Android Binder, have been designed and implemented.
Open Documentation
Lila
Once a day, the game randomly challenges the player to take a picture showing their current location and activity. Other players can view, comment on, and vote for the submitted picture.
Open GitHub repository Open Documentation
Description