Skip to content
View Charystag's full-sized avatar
🏠
Working from home
🏠
Working from home
  • 42 School
  • Paris, France

Highlights

  • Pro

Block or report Charystag

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.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

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

Report abuse
Charystag/README.md

πŸš€ Innovating with Automation: From Ideas to Real-World Solutions

Introduction

Hey there! πŸ‘‹ I'm a software engineer with a passion for creating innovative solutions to real-world problems using automation. I believe in working smarter, not harder, and I love automating complex workflows to make life easier. From Bash scripting to building custom tools, I’m constantly seeking ways to solve challenges creatively.

I'm also a strong advocate of clear and concise documentation. I see it as an essential part of delivering efficient solutions, whether for developers or users. By reading and writing documentation, I prevent unnecessary bugs and create a roadmap for myself and others to navigate projects with ease.

Explore my repositories, where you'll find personal projects focused on automation, and a curated collection of learning materials to help enhance your programming skills.

Table of Contents

πŸš€ Projects

Here are some of the projects where I’ve applied automation to tackle real-world challenges:

  1. Markdown Links Checker - πŸ”— Validating URLs in Markdown Documents

    A tool designed to check the validity of HTTP(S) URLs in Markdown documents. This script automates the process of verifying links, making sure that documentation remains accurate and functional. It’s perfect for anyone maintaining markdown-based documentation with external links.

    • Tools Used: Bash, curl
  2. Classcreator - πŸš€ Automating C++ Class Creation

    A Bash script that automates the process of creating classes in C++. This tool helps speed up C++ development by eliminating repetitive tasks, allowing developers to focus on writing actual code.

    • Tools Used: Bash
  3. Video Tutorial - 🎬 Automating Video Demos for Scripts

    This script automates the creation of video demonstrations for other scripts, making it easier to showcase and share coding tutorials. No need for manual screen recording setups!

    • Tools Used: Bash
  4. Man Reader - πŸ“– Simplifying the Reading of Man Pages

    A Bash script that helps navigate through Linux man pages more easily, making it faster to find the exact information needed. Perfect for developers who want to streamline their terminal workflow.

    • Tools Used: Bash, Linux
  5. Lazyprototypes - πŸ“ Generating C Function Prototypes Automatically

    A C-based tool that generates prototypes for C functions, automating the tedious task of writing them manually. This tool reduces development time and ensures consistency in code structure.

    • Tools Used: C, Bash

πŸ“š Tutorials

I enjoy sharing knowledge through practical, hands-on tutorials. Below are some resources to help others learn from my experience and tackle real-world problems.

  1. OverTheWire Bandit Solutions - πŸ”’ Mastering the Bandit Challenges

    This guide provides solutions to the Bandit challenges from OverTheWire. By walking through each level, you’ll build a strong foundation in Linux commands, security, and terminal skills. Perfect for those looking to improve their real-world problem-solving capabilities in Linux environments.

    • Focus: Linux, Security, SSH, Problem-Solving

πŸ“– Learning Resources

I've gathered a variety of learning materials across different programming topics, with a special focus on automation, systems programming, and DevOps. Whether you're looking to deepen your knowledge in algorithms, sharpen your C/C++ skills, or explore DevOps, there's something here for everyone.

Explore the full collection of materials in my Learning Material Repository. Below are some of the key categories covered:

  • Algorithms
    Dive into the theory and practice of algorithms, with resources covering core concepts, design, and optimization techniques.

  • C and C++
    Strengthen your knowledge of systems programming with resources focused on C, C++, and embedded systems, including guides for secure coding practices.

  • Shell and Linux
    Master the command line and Linux environments. This category includes resources on shell scripting, system administration, and efficient terminal use.

  • DevOps and SysAdmin
    Learn the tools and practices that make modern infrastructure work, from Kubernetes and Docker to continuous integration and system administration.

  • Security
    Understand the principles of security, ethical hacking, and secure programming with resources that span from fundamental security practices to penetration testing and reverse engineering.

  • Python
    Whether you're new to Python or an experienced user, this category offers resources that cover web development, data science, and automation with Python.

  • Machine Learning
    Explore resources on machine learning theory, practical applications, and hands-on guides to implementing algorithms and models.

  • Assembly and Low-Level Programming
    Learn assembly language and delve into low-level programming with resources for understanding how computers work at the hardware level.

  • Design Patterns
    Understand the fundamental software design patterns and best practices for structuring efficient and maintainable codebases.


Each category contains books, guides, and tutorials designed to help you grow in these areas. Check out the full repository for a comprehensive list of resources across all these topics and more.

πŸ’» Technologies I Use

Here’s a snapshot of the languages, tools, and technologies I use regularly to solve real-world problems, automate workflows, and build efficient solutions.

Programming Languages

  • Bash - My go-to for automation and scripting.
  • C/C++ - For systems programming and low-level development.
  • Python - Great for scripting, automation, and data analysis.

Automation & Scripting Tools

  • Shell Scripting - Automating repetitive tasks and workflows.
  • CMake - For managing complex builds in C/C++ projects.
  • GitHub Actions - For continuous integration and automation of code workflows.
  • Docker - Containerization for building and running applications in isolated environments.

DevOps & Infrastructure Tools

  • Docker - Building, shipping, and running applications in containers.
  • Jenkins - Automating builds and deployments.
  • Git - Version control for all my projects, both personal and collaborative.

Other Tools & Frameworks

  • Doxygen - For generating documentation from code comments.
  • Vim - My preferred text editor for coding and quick edits.
  • Curl - For making HTTP requests in scripts, such as checking URL validity in Markdown files.

πŸ“š Currently Learning

I'm always expanding my skill set by diving into new technologies and tools. Here’s what I’m currently focused on learning:

  • Rust - Exploring safe systems programming with Rust, particularly for its focus on memory safety and performance in low-level development.
  • HTML, CSS, JavaScript - Building a foundation in web development, learning to create interactive and responsive web applications.

πŸ“ˆ GitHub Stats

Here’s a quick look at my GitHub activity and the technologies I work with:

Charystag's GitHub stats Charystag's Top Languages

πŸ“¬ Let's Connect!

I'm always open to new opportunities, collaborations, and discussions. Feel free to reach out:

Looking forward to hearing from you!

πŸ”— Conclusion

Thanks for visiting my GitHub! Whether you're here to explore my projects, collaborate on something new, or just connect, I’m always excited to hear from fellow developers and innovators. Let’s work together to build something amazing!

Pinned Loading

  1. Learning-Material Learning-Material Public

    My own list of recommended ressources to learn some new things about programming.

    7

  2. markdown_links_checker markdown_links_checker Public

    Checks for the validity of links in a markdown document

    Shell

  3. video_tutorial video_tutorial Public

    A script to make video tutorials in the terminal using a simple configuration file to write commands and descriptions

    Shell

  4. classcreator classcreator Public

    A script that creates your classes in CPP

    Shell 1

  5. man_reader man_reader Public

    Bash script that allows to navigate the sections of man_pages

    Shell 11

  6. Scripts Scripts Public

    Helper Scripts to make daily tasks easier

    Shell 1