Skip to content
View Lugmaner's full-sized avatar

Highlights

  • Pro

Block or report Lugmaner

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Lugmaner/README.md

Lukas Heel

About Me

Ich studiere Informatik an der Universität Innsbruck und interessiere mich vor allem für sauberen, gut getesteten Code, Algorithmen, Datenstrukturen und mathematische Grundlagen in der Programmierung.

Aktuell arbeite ich hauptsächlich mit Java und C. In Java beschäftige ich mich vor allem mit objektorientiertem Design, Projektstruktur und Testing. In C interessiert mich besonders, wie Speicherverwaltung, Pointer, dynamische Datenstrukturen und systemnahe Grundlagen praktisch funktionieren.

Mir ist wichtig, nicht nur Code zu schreiben, der irgendwie läuft, sondern nachvollziehbare Lösungen zu bauen: verständliche Struktur, klare Verantwortlichkeiten und Tests, die zeigen, dass die Logik auch in Randfällen funktioniert.

Außerdem habe ich solide Grundlagen in Haskell und Julia. Haskell hilft mir dabei, funktionale Konzepte besser zu verstehen. Julia lerne ich aktuell im Studium und möchte die Sprache später auch für numerische Projekte einsetzen.

Meine aktuellen Projekte sind vor allem Lernprojekte, mit denen ich gezielt bestimmte Bereiche vertiefe: Scheduling und Testing in Java mit ExamFlow, Speicherverwaltung und Datenstrukturen in C mit dem Password Manager.


Projects

ExamFlow (Java)

ExamFlow ist ein Java-Projekt, mit dem automatisch Lernblöcke für Prüfungen geplant werden sollen. Die Grundidee ist, dass Prüfungen, Deadlines, Lernaufwand und bereits belegte Zeitfenster berücksichtigt werden und daraus ein realistischer Lernplan entsteht.

Der aktuelle Kern ist ein GreedyScheduler, der Prüfungen nach Deadline sortiert und versucht, passende Lernblöcke vor dem jeweiligen Prüfungstermin einzuplanen. Dabei werden fixe Termine, Tagesgrenzen, Session-Länge und Pausen berücksichtigt. Wenn keine gültige Planung möglich ist, wird eine eigene Exception geworfen.

Was aktuell enthalten ist:

  • GreedyScheduler als konkrete Implementierung einer Scheduling-Strategie
  • Modelle wie Exam, StudyBlock, TimeSlot und FixedAppointment
  • Interfaces wie SchedulingStrategy und Schedulable
  • eigene Fehlerbehandlung mit FailedToScheduleExamException
  • erste Struktur für CLI und Export
  • JUnit-Tests für Blockdauer, Gesamtlernzeit und Scheduling-Verhalten

Der Fokus liegt für mich hier vor allem auf sauberem Java-Code, objektorientierter Struktur, nachvollziehbarer Logik und Testing. Gerade bei ExamFlow versuche ich, nicht nur „irgendwie“ eine Lösung zu bauen, sondern die einzelnen Teile so zu strukturieren, dass sie später gut erweiterbar und testbar bleiben.


Password Manager (C, gemeinsam mit einem Kollegen)

Der Password Manager ist ein Übungsprojekt in C, das ich gemeinsam mit einem Kollegen angefangen habe. Das Projekt ist nicht für echten produktiven Einsatz gedacht und verwendet keine sichere Verschlüsselung. Der Zweck war eher, mehr praktische Erfahrung mit C zu sammeln.

Mein Fokus lag dabei auf der internen Struktur, dynamischen Datenstrukturen und sauberem Speicher-Management. Besonders wichtig war für mich, klarer zu verstehen, wem Speicher gehört, wann etwas freigegeben werden muss und wie man typische Fehler in C vermeidet.

Mein Teil:

  • database.c / database.h
  • entry.c / entry.h

Fokusbereiche:

  • Heap-Speicher
  • dynamische Datenstrukturen
  • klare Speicher-Ownership
  • sauberes Freigeben von Speicher
  • Vermeidung von Undefined Behavior

Tech Stack

Languages

C Java Haskell Julia

Tools / Environment

Linux Bash Git IntelliJ IDEA VS Code


Interests

  • sauberer und gut getesteter Code
  • Algorithmen und Datenstrukturen
  • mathematische Grundlagen in der Programmierung
  • low-level Programmierung
  • Speicherverwaltung
  • Betriebssystemgrundlagen
  • C und systemnahe Programmierung
  • Java, objektorientiertes Design und Testing
  • numerische Simulationen
  • Julia für mathematische und technische Anwendungen

Aktuell suche ich nach Praktikums- oder Werkstudentenstellen im Bereich Softwareentwicklung.


Contact

Popular repositories Loading

  1. Password-Manager Password-Manager Public

    Terminalbasierter Password Manager in C mit Fokus auf Speicherverwaltung, dynamische Datenstrukturen und Ownership

    C

  2. Lugmaner Lugmaner Public

  3. examFlow examFlow Public

    Java project for scheduling study blocks before exams, focused on greedy scheduling, clean models and JUnit testing.

    Java

  4. my_memory_allocator my_memory_allocator Public

    Ein auf sbrk basierender Speicherallokator, der eigene Implementierungen von malloc, calloc, realloc und free bereitstellt.

    C