Community-Mitglied Montag: Devansh Varshney

Heute sprechen wir mit Devansh Varshney, der LibreOffice um die Unterstützung von Histogrammdiagrammen erweitert hat und an Verbesserungen der Basic-IDE arbeitet…

Erzählen Sie uns etwas über sich selbst!

Ich komme aus Mathura in Indien, einer der historischen Städte, in denen während des Kushan-Reiches das erste Bildnis Buddhas geschnitzt wurde, dem Geburtsort von Jain Tirthankar Neminatha und dem bekannteren Geburtsort von Bhagwan Krishna. Eine Stadt, in der auch griechische Könige herrschten und deren Geschichte von vielen Reisenden dokumentiert wurde, darunter die bekannteren Xuanzang und Faxian.

Die reiche Geschichte und vielfältige Kunstkultur von Mathura spiegeln auch meine Interessen wider. Meine Interessen reichen von Geschichte über Astrophysik bis hin zu Wirtschaftswissenschaften und vom Optimieren benutzerdefinierter Android-ROMs in der Highschool bis hin zum Optimieren der LibreOffice-Codebasis, die eines der interessantesten Rätsel ist, auf die ich je gestoßen bin. Sogar die Menschen in meinem Umfeld haben das bemerkt und mir in der Schule den Spitznamen „Internet“ gegeben – ein recht interessanter Name, der aber meine Natur wirklich gut widerspiegelt.

Neben der Arbeit an der LibreOffice-Codebasis plane ich auch, mein Buch über ADHS fertigzustellen, das ich anhand von Grundprinzipien und Physik konzipiert habe. Ich hoffe, dass es bis zum nächsten Jahr fertig sein wird.

Vishram Ghatl am Ufer des Flusses Yamuna in Mathura (Bild: Umang108 on Wikimedia, CC-BY-SA) Vishram Ghatl am Ufer des Flusses Yamuna in Mathura (Bild: Umang108 on Wikimedia, CC-BY-SA)

Woran arbeiten Sie derzeit im LibreOffice-Projekt?

Dieses Jahr arbeite ich daran, die Basic-IDE besser und leistungsfähiger zu machen, indem ich einen neuen Objektbrowser in die IDE einfüge. Dies ist eine der am häufigsten nachgefragten Funktionen, da Benutzer, die mit LibreOffice arbeiten, bisher die Online-API-Webseite besuchen mussten, um einen Verweis auf die Details der UNO-APIs zu erhalten. Das war ziemlich mühsam und verlangsamte nicht nur die Arbeit, sondern beeinträchtigte auch die Benutzererfahrung, insbesondere für Makroentwickler.

Darüber hinaus wird es auch eine Basic-Code-Vorschlagsfunktion geben, die den Benutzern zur Verfügung steht, sodass sie nicht jedes Mal nachsehen müssen, was eingegeben werden soll, da die Vorschlagsfunktion eine Liste der möglichen Parameter und Variablen anzeigt, die eingegeben werden können.

Warum haben Sie sich für die Teilnahme am LibreOffice-Projekt entschieden und wie war die Erfahrung?

Das ist eine interessante Frage. In den Jahren 2017 und 2018 hatte ich viele Probleme mit dem Chrome-Browser und überlegte, diese zu beheben. Damals stieß ich auf das Chromium-Projekt, auf dem Chrome basiert, und versuchte zu fragen, wie ich einen Beitrag leisten könnte. Ich erhielt zwar eine Antwort, aber sie unterschied sich von der, die ich im LibreOffice-Projekt erhalten hatte.

Hier wurde ich nicht mit Schweigen oder Verwirrung konfrontiert, als ich einen Fehler auswählte, sondern die Leute zeigten Interesse und Neugier und halfen mir, das zu beheben, was ich beheben wollte. Ich stelle andere Open-Source-Projekte nicht auf ein Podest – es ist nur das, was ich bei LibreOffice erlebt habe.

Ich habe zuvor auch einige kleine Beiträge zum Google Benchmark- und Blockly-Projekt sowie zum Phoenix Framework geleistet, aber die große Wende kam letztes Jahr, als Ilmari neugierig wurde und mich fragte, warum ich den Google Summer of Code (GSoC) noch nicht erwähnt hatte, und mich dazu drängte, mich für 2024 zu bewerben. Ich sah mir die Projekte an und fand „Hinzufügen von nativer Histogrammunterstützung zu LibreOffice“.

Da ich in der Vergangenheit mit maschinellem Lernen gearbeitet hatte, erkannte ich, dass der Bedarf an diesen neuen Diagrammtypen entscheidend ist. Aber das ist nicht der einzige Punkt – während ich den Vorschlag für das Histogramm-Projekt vorbereitete, stellte ich fest, dass das CERN LibreOffice für seine Arbeit verwendet und sogar ein Tutorial zu einer Umgehungslösung für die Erstellung von Histogrammdiagrammen über Säulendiagramme (Link)

Das hat mir zwei Dinge gezeigt: Erstens, dass das Fehlen dieser Funktion nicht nur die Forschung verlangsamt, sondern auch, dass LibreOffice weltweit Einfluss hat. In diesem Moment wurde mir klar, dass LibreOffice nicht nur eine Office-Suite ist, die Menschen Autonomie über ihre Daten gibt, sondern dass es auch einen enormen Einfluss auf die menschliche Evolution und Entwicklung hat.

Haben Sie noch weitere Pläne für die Zukunft? Was braucht LibreOffice wirklich?

Ja, es gibt noch viel zu tun. An erster Stelle steht die Ergänzung um Histogrammdiagramme und andere neue Diagrammtypen, da wir später Herausforderungen bei der Zuordnung von Diagrammen in der Codebasis festgestellt haben und der neu eingeführte Namespace von Microsoft für den OOXML-Export die Arbeit erschwert hat. In diesem Jahr habe ich mich dann mehr für OCR mit Bildern und Dateien wie PDFs interessiert, die den Benutzern lokal nativ zur Verfügung stehen.

Ich habe versucht, eine Erweiterung mit Tesseract zu erstellen, aber ihre Effizienz ist nicht besonders gut und sie übersieht die gesamte Struktur des Textes im Bild.

Da LLMs (Large Language Models, große Sprachmodelle) heutzutage sehr bekannt sind, habe ich mir angesehen, wie sie Bilder verarbeiten und lesen, und festgestellt, dass sie Bilder tatsächlich nicht direkt lesen können. Die Bilder müssen zunächst von sogenannten Vison Language Models (VLMs) verarbeitet werden.

Heutzutage gibt es einige erstaunliche Open-Source-VLMs, die zudem klein sind und lokal ausgeführt werden können – sogar mit der Rechenleistung eines Mobilgeräts. Daher suche ich auch nach Möglichkeiten, wie wir dies mit LibreOffice zum Laufen bringen können, sodass nicht nur OCR, sondern auch eine zuverlässige Übersetzung von Text in die erfasste Struktur und die Änderung dieser Struktur möglich ist.

Vielen Dank an Devansh für die großartigen Beiträge zu LibreOffice! Jeder ist herzlich eingeladen, herauszufinden, was man tun kann, um die Suite noch besser zu machen 😊