Welcome to my personal website. Please keep in mind that this page contains all posts. Some of the posts may not be relevant anymore.
User owned library
2024-01-24
Bachelor thesis Master thesis Not available

Libraries are a great way to boost developer productivity, as they provide ready-to-use functionality and components. While particular library implementation is language-dependent, most libraries expose only their API. This is an issue when a developer needs to modify inaccessible behaviour or wants to express a higher level of control. Despite that, we see little to no progress in the publication and use of libraries.

Nevertheless, there are promising projects exploring alternatives. Project Bit allows users to build composable software inside large development teams, by enabling the share of library-like artifacts. shadcn/ui, a React component library, employs an alternative approach to publication. Users can copy and paste the source, gaining complete control of the library in their projects.

This project aims to reimagine how we work with libraries. The aim is to put library users in charge and thus lay the foundation of a user-centric library experience.

Code review
2023-09-13
Bachelor thesis Master thesis Not available

Integration of code reviews into development process can enhance code quality. Code reviews are integrated as part of the public tools and repositories, such as GitLab or GitHub. Yet often code review is limited to the scope of a change, like a pull request. This can be sufficient for day to day operation, but it is not suitable for external or complete reviews. Objective is to create an online tool that would address this short coming.

Schema visualisation / editor
2023-07-26
Bachelor thesis Master thesis Not available

There are many ways how to define a data schema: JSON Schema, RDFS, or code. We also have plenty of visualisation techniques like UML or ER-Model. So it should be simple to take your schema and visualise it right? Well, I’ve tried and I was unable to find, as of 2023, any suitable online tool to get the job done. We can try to change this together.

Request driven data access
2023-04-19
Bachelor thesis Diploma thesis Not available

The aim is to make data available in multiple representations as requested by the user.

RDF viewer
2023-04-05
Bachelor thesis Not available

Linked data is five start data format, with promises of semantics and interoperability. Yet viewing, the basic operation, is not living up to the promise. The objective is to improve this situation and try to address not only linked data but RDF in general.

Vocabulary hub
2023-02-01
Bachelor thesis Diploma thesis Not available

One of the core principles of linked data is to employ vocabularies to describe data in a machine-readable way. By doing so, data producers can significantly enhance data usability and interoperability. Findable, Interoperable, Accessible, and Reusable, or FAIR in short, vocabularies are enablers of the aforementioned. However, many vocabularies are not published in an easy-to-consume way. As a result, data publishers often resort to the design of their new proprietary vocabulary. While feasible, this approach decreases the value we would get from reuse and hinders data interoperability. The objective of this project is to tackle those issues.

Open Slides Editor
2022-11-25
Bachelor thesis Not available

We all may need to give a presentation at some point in time. Many presenters rely on slides as a cornerstone of their presentations. Those slides are created in software like PowerPoint and Google Slides, … If you, like me, feel that there should be a better tool, you may consider reading the rest of this post.

Jak neobhájit
2022-11-15

Studenti se často ptají, co je třeba udělat pro úspěšnou obhajobu. To je bohužel silně individuální a z mého pohledu neexistuje univerzální odpověď. Zde se tedy změřím naopak na to co dělat, pokud obhájit nechcete.

Connecting documents
2022-05-25
Bachelor thesis Not available

Honestly, I do not enjoy writing documentation. By documentation, I do not mean comments in source code. I am talking about external documentation, API specification, data model, user documentation, database schema documentation, etc…

Yet frankly, even more, tedious and labour-intensive than writing the documentation is keeping it up to date. The reason is there is no connection between to code to the documentation. As a result, we manually synchronize multiple documents.

There must be a better way, and you can contribute to it.

Hierarchical Data Transformation
2022-03-16
Bachelor thesis Not available

RDF, XML, JSON and many other formats represent hierarchical data. The hierarchical data are in a tree or forest-like structure. However, conversation/transformation between those formats is not always straightforward.

To be precise, transformations, like CVS, XML, and JSON to RDF, are simple and well-supported. The same is not true for the opposite direction. A solution? A language and processor designed for highly customizable and extensible transformation of hierarchical data. The objective is to design and implement this tool or its part.

Semantic code
2022-03-06

Semantic web, semantic data - the common objective is to attach meaning to the data and increase interoperability. Tools like vocabularies, ontologies, and query languages, are employed to support the above-mentioned goals. Yet while all the tools aim to add meaning to data, none is the source of true meaning.

Source code is the source of truth. We can leverage it to improve software interoperability and introduce semantics.

Data factory
2021-07-28
Bachelor thesis Not available

Data processing is a common task in almost any computer-related activity. For example, data scientists employ data pipelines, also called workflows, to prepare data from machine learning methods. Scientists routinely process and analyze data with various levels of automation. Data pipeline can be simple as running a bash script or as complex as running distributed streaming processing.

As science is an exploratory process, scientists often experiment with different data pipelines and datasets. As a result, many different pipelines need to be designed, implemented and tested. Management and execution of those pipelines is a labour-intensive process.

Yet with proper toolset support, we should be able to make this process approachable and even increase the productivity of the researchers.

Python RDF library
2021-07-07
Bachelor thesis Not available

Resource Description Framework (RDF) is a standard data model. As RDF becomes widespread, more and more data are available in one of the RDF data formats. Yet no Python library would allow for the processing of larger RDF data files.