Skip to content
View cheroliv's full-sized avatar

Block or report cheroliv

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
cheroliv/README.md

cheroliv

🇬🇧 English · 🇫🇷 Français · 🇨🇳 中文 · 🇮🇳 हिन्दी · 🇪🇸 Español · 🇸🇦 العربية · 🇧🇩 বাংলা · 🇵🇹 Português · 🇷🇺 Русский · 🇵🇰 اردو

Software Artisan · Trainer · Gradle Tooling Author

I design an ecosystem of Gradle Kotlin DSL plugins for project tooling, executable documentation, and educational content production.


Positioning

I work at the intersection of three domains:

  • Software Craftsmanship — TDD, BDD Cucumber, Hexagonal Architecture, Idiomatic Kotlin.
  • Developer Tooling — reusable Gradle plugins, published under the education.cccp namespace on the github.com/cccp-education.
  • EdTech — educational content, generated static sites, traceable training materials.

The coherence of it all stems from a simple conviction: a credible developer/trainer builds and uses their own tools. I don't sell what I don't use on a daily basis.


Methodology

The lifecycle I follow for each plugin:

  1. Business logic prototyping within the root build.gradle.kts, with relevant logs to validate behavior under real conditions.
  2. Plugin migration once the domain logic is stable — transplanting the proven code to a dedicated module, using TDD with JUnit 5.
  3. BDD with Cucumber as soon as the domain allows, to document intent at the user level.
  4. Publication to the Maven Central with a versioned API contract.

It's not a fancy method, but it's one that stands the test of time.


The education.cccp.* Ecosystem

cccp.education

Environment & Workstation

A Gradle Kotlin DSL build script that orchestrates the creation of a bootable Xubuntu ISO — functioning as both a live USB and an installer, equipped with the necessary tooling tailored for three usage profiles:

  • Nomadic workstation — my complete portable environment on a USB drive.
  • FTTH Telecom Technician — ready-to-use field tooling.
  • Student/Trainee — immediate onboarding with no prior installation required.

The project illustrates the ecosystem's philosophy: the work environment itself is a reproducible, versioned, and documented artifact. The project's documentation is generated and published by bakery at cccp.education/magic-stick — proof that the publication pipeline runs in production.


Core Stack

Java · Kotlin · Gradle (Kotlin DSL) · JUnit 5 · Cucumber · Spring Boot · AsciiDoc · JBake · Reveal.js · PlantUML · JGit · Jackson · LangChain4j · Koog · Docker · PostgreSQL/pgvector · GitHub Actions · Xubuntu/Debian packaging.


Links


Pinned Loading

  1. playlist-downloader playlist-downloader Public

    🎧 YouTube Playlist Manager CLI: Open source command-line tool to create, manage, sync, and download your YouTube playlists. Based on Python, Typer, yt-dlp, and the YouTube Data API v3. Modular arch…

    Python 8

  2. cheroliv.github.io cheroliv.github.io Public

    static website based on jbake

    HTML

  3. millBakerPlugin millBakerPlugin Public

    🔨 Mill plugin → JBake → JGit → GitHubPages

    CSS 1

  4. millBaker millBaker Public

    🔨 Mill → JBake → JGit → GitHubPages

    CSS