Matthieu Barberis

Portfolio

DevOps, systems, networking, and software projects.

Many of the projects below were completed through 42’s software-engineering curriculum, alongside personal and professional work.

Software & Systems Projects (7)

malloc

Cmemory managementmmap

Terminal output from the custom malloc memory allocator project.

Custom malloc/free/realloc shared library using mmap/munmap, TINY/SMALL/LARGE zones, block splitting/coalescing, and 16-byte alignment.

push_swap

Calgorithmssorting

C program that sorts integers with a limited instruction set—push, swap, and rotate—across two stacks, producing an operation sequence designed to use few moves.

cub3D

Cray castinggraphics programming

A screenshot of the game showing Wolfenstein-like corridors.

Wolfenstein-style first-person 3D maze in C using ray casting. It loads a .cub scene, renders textured walls and floor/ceiling colors, and supports WASD movement and left/right rotation.

fdf

Cwireframegraphics programming

Screenshot of the program showing two different maps: Mars and the Mandelbrot Set.

Wireframe renderer in C, written from scratch, that parses elevation maps and projects (x, y, z) points into a 3D landscape made of line segments.

Swingy

JavaMavenMVCSwing

Screenshot of the Swingy graphical user interface.

Text-based RPG written in Java using the MVC pattern, with console and Swing modes, CSV hero persistence, validation, map generation, encounters, XP leveling, and artifacts.

ft_turing

OCamlTuring machineJSON

Terminal output from ft_turing showing Turing machine transitions.

OCaml single-tape Turing machine simulator with JSON machine validation and step-by-step tape and transition output.

ft_ality

OCamlfinite automataparsing

Terminal output from ft_ality recognizing fighting-game move sequences.

OCaml finite-state automaton built at runtime from fighting-game move grammars, with automatically computed keyboard mappings and move-sequence recognition.

Additional Projects (14)
  • 42 Piscine — foundational C exercises covering control flow, pointers, arrays, strings, recursion, and Unix basics.
  • libft — static C library reimplementing core libc functions plus string, memory, allocation, and linked-list helpers.
  • ft_printf — printf-style formatter in C supporting c, s, p, d, i, u, x, X, and % conversions.
  • get_next_line — C function that returns one line per call from a file descriptor, using static state and a compile-time BUFFER_SIZE.
  • minitalk — client-server IPC in C using only UNIX signals SIGUSR1 and SIGUSR2.
  • philosophers — Dining Philosophers simulation with pthreads, mutex-protected forks, timing, and starvation/death detection.
  • C++ Modules — C++98 exercises covering OOP, inheritance, templates, exceptions, STL containers, and algorithms.
  • netpractice — 10 TCP/IP configuration puzzles involving IPv4 addressing, subnet masks, routing, and troubleshooting.
  • avaj-launcher — Java aircraft weather simulation with scenario parsing, input validation, movement rules, and Observer, Singleton, and Factory patterns.
  • libasm — x86-64 NASM library implementing libc-style routines callable from C with the System V calling convention.
  • 3D Computer Graphics Programming — Coursework in C renderer development covering projection, rasterization, and lighting.
  • Atari 2600 Programming with 6502 Assembly — Coursework in low-level game programming with 6502 assembly.
  • Truff' and Co — responsive website for a pet-sitting business.
  • wg-pihole-docker — Dockerized WireGuard and Pi-hole home networking stack.