Curriculum Vitae Help

Private projects

Sample Android Application

If you are interested in the style in which I create applications, both in terms of architecture and code cleanliness, I invite you to check out my sample Android application. This application showcases the use of modern technologies and design patterns, such as Jetpack Compose, multi-module architecture, and the MVVM pattern. I also apply best programming practices, including SOLID principles, DRY, and many others.

The source code of the application is available for download here Android-Sample-main.zip or can be found in my private repository Android Sample. This allows you to directly see my approach to programming and view code examples that illustrate best practices in developing modern mobile applications.

If you have any questions or need more information, do not hesitate to contact me. I am happy to share my knowledge and experience to assist you in your projects.

AI - Artificial Intelligence

In the context of AI, I have not managed to complete a complete project so far. I am currently in an intense learning phase, and my private initiatives are more like experimental research facilities. However, I have found that the best way to learn new technologies is to set yourself a specific goal. Therefore, I took up the challenge of creating my own AI model, focusing on training convolutional neural networks (CNN) for photo classification based on person recognition. I believe that a single AI model may not be sufficient, so at the face detection stage I use the opencv library and the haar cascade mechanism. Later, I plan to use tensorflow and keras to train the CNN more thoroughly.

In terms of user interface, I am also exploring Compose Multiplatform, a modern tool that allows you to create UI that works on multiple platforms, which is part of my process of learning interface design.

Android & Kotlin multiplatform libraries in Maven Repo.

As part of learning how to create my own libraries and tools for developers, I developed a few small libraries that I made available in Maven, a repository popular among programmers. Obviously, these libraries won't change the world, but their main goal was to expand my knowledge about the possibilities of creating open-source tools that support the programming process.

Unbound Drag & Drop

Unbound Drag & Drop

Maven Central Version License: MIT

Unbound Drag & Drop.webm

Unbound Drag & Drop is a versatile and user-friendly feature designed to enhance your Android applications by enabling drag and drop functionality across multiple RecyclerViews. Unlike the default behavior, which restricts drag and drop actions within a single RecyclerView, Unbound Drag & Drop allows users to seamlessly move items between different RecyclerViews, providing a more flexible and intuitive user experience.

Features

  • Multi-RecyclerView Drag and Drop: Easily drag and drop items between multiple RecyclerViews.

  • Customizable and Extensible: Adapt the feature to fit your specific needs with customizable options and extensible components.

  • Smooth and Intuitive User Experience: Enhance the interactivity of your app with a user-friendly drag and drop interface.

  • Easy Integration: Quickly integrate Unbound Drag & Drop into your existing Android projects with minimal setup.

Multilevel Expandable RecyclerView

maven License Publish

With this adapter you can add expand feature to regular RecyclerView.

All objects are store in Tree (Data structure), so adapter can create multilevel expandable groups.

Under the hood, the tree is flattened to simple list, so from RecyclerView's point of view it can operate as usual.

Demo.gif

NAS Server

Having my own NAS server is not just a hobby, but an opportunity to delve into the fascinating world of technology. In my spare moments, I dedicate time to exploring its capabilities, which translates into countless hours of fun and learning. My journey with the NAS started quite innocently but quickly evolved into something much bigger. Currently, my server acts as a hosting platform, running several websites, including the one you are reading this post on.

I also use it as a testing environment, invaluable while learning React or Nest for the backend. What once seemed like a mere hobby has now allowed me to gain extensive knowledge in managing multiple Docker containers, facilitating their communication, and creating my solutions. This process also made me realize how crucial it is to ensure network security - both private and public.

Over time, my interest in network security has grown to proportions that sometimes seem excessive to me. The network architecture in my home, with routers, switches, and VPNs, could be compared to the network infrastructure of some companies I've had the chance to work for. I sometimes laugh that my home network is more complex than some professional installations. However, this reflects the depth of my engagement in a hobby that has become a true passion and a source of valuable skills.

Last modified: 24 July 2024