8000
Skip to content
View marc0x71's full-sized avatar

Block or report marc0x71

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

Hi, I'm Marco πŸ‘‹ and I (still) want to learn πŸš€

At 54, after decades spent writing code in C, C++, and Python, I could think I've seen everything in the world of programming. But no. A few years ago, I stumbled upon Rust and... I fell in love. ❀️

It wasn't love at first sight, to be clear. Rust challenges you, forces you to think differently about memory management, concurrency, and code safety. But it was precisely this challenge that reignited that spark ✨ I felt the first time I wrote a program.

πŸ’» The year 2000 and my "initiation" into Unix

Let me tell you a story. It was the year 2000, I came from the DOS/Windows world like practically everyone else, and I was "thrown" into a project that used Unix servers. My toolkit? Basic commands to navigate folders (cd, ls...) that I used when connecting via FTP (the "s" in front of FTP wasn't even talked about back then).

Then came the moment to edit files. And that's when I discovered vi.

For someone used to "classic" visual editors, it was traumatic. Literally. I had two choices: get moved to another project or learn to live in that environment. I chose the latter.

I installed Mandrake (a Red Hat derivative) in dual boot and a new adventure began. An adventure that never ended.

🐧 GNU/Linux: from necessity to passion

Today I mainly use GNU/Linux, specifically Ubuntu. For several years I was a moderator for the Italian Ubuntu community site - an incredible experience that taught me so much about the value of knowledge sharing. Then professional and personal commitments increased and I unfortunately had to distance myself from the community, but not from the distribution. Linux remains my preferred choice for programming, I can't do without it.

Of course, I also love photography, and for this reason I've alternated Linux with a Mac for years (initially due to lack of valid alternatives). Maybe it's because of the terminal, but that experience that was supposed to be relegated to the world of photography, I never abandoned it. Today I alternate between Mac and Linux, but when I write code, I always come back home: to Linux.

And that vi that terrified me in 2000? 😱 It became Vim, then NeoVim, and is now one of the tools I could never give up. Funny how things turn around. πŸ”„

πŸ“š Why I share code and create content

Because explaining something is the best way to truly understand it. I started creating content on Rust for beginners, based on the assumption that if I - with all my C/C++ background - found some concepts difficult, I'm probably not the only one.

You'll find my projects here on GitHub, and I also run a YouTube channel with a complete Rust course for those starting from scratch, plus tutorials on tools I use daily: Vim/NeoVim (yes, I'm one of those who can't stop using it, and now you understand why) and Git.

πŸ—‚οΈ What you'll find in my repositories

  • πŸ¦€ Rust projects and experiments, from basic learning exercises to more advanced concepts
  • πŸ”„ Code examples showing the "migration path" from languages like C++ to Rust
  • βš™οΈ Configuration files and dotfiles for Vim/NeoVim and development workflows
  • πŸ› οΈ Scripts and tools for GNU/Linux environments
  • πŸ” Projects comparing different programming approaches
  • πŸ“– Learning resources and code that reflects my journey (mistakes included!)

🎯 You might be interested if

You are:

  • πŸ€” Curious about Rust but don't know where to start
  • πŸ”€ Coming from C/C++ or Python and want to understand what makes Rust different
  • ⚑ Looking to improve your workflow with Vim/NeoVim and Git
  • 🐧 Using or wanting to use GNU/Linux for development
  • πŸŽ“ Someone who believes age is just a number when it comes to learning
  • πŸš€ Experiencing (or have experienced) a technological transition that seems challenging

πŸ’­ My philosophy

I believe in learning by doing and sharing what you learn. I'm not a guru, I'm a developer who after many years still has a hunger for knowledge. I learned vi because I had no choice, I embraced Linux because it opened up a world to me, and today I'm learning Rust because it challenges me.

And if I can make the path easier for someone else by sharing the obstacles I've overcome and those I'm still overcoming, all the better.

Welcome to my GitHub profile. Feel free to explore, fork, and reach out!

Marco


πŸ”— Where to find me

  • 🏠 Blog- My blog
  • πŸ“Ί YouTube Channel - Complete Rust course + tutorials on Vim and Git
  • 🐘 Mastodon - Follow me on the fediverse
  • 🐦 X - Quick updates and thoughts
  • πŸ’» GitHub - My projects and code

Pinned Loading

  1. bgrep bgrep Public

    Search for KEY in a sorted delimited file using binary search (O(log n)). FILE must be pre-sorted on the key column.

    Rust 1

  2. mtable mtable Public

    A pattern matching table in Rust

    Rust

  3. inmemorytable-rs inmemorytable-rs Public

    A Rust library for managing typed records in POSIX shared memory with IPC semaphore synchronization.

    Rust

  4. nvim_config_rust nvim_config_rust Public

    Configurazione NeoVim 0.12 per sviluppare in Rust

    Lua

  5. digital_map digital_map Public

    Una struttura dati in Rust per mappare stringhe numeriche a valori, implementata come trie digitale

    Rust

  6. diverge diverge Public

    Simple diff-like command implementation written in Rust

    Rust

0