PRJ: rust-learning

Project Summary

Field Value

PRJ ID

PRJ-rust-learning

Owner

Evan Rosado

Priority

P2

Category

Learning / Programming

Status

Active (Learning)

Language

Rust

Repository

_projects/personal/rust-learning

Created

2026-03-25

Overview

Rust programming language learning project. Building practical CLI tools to learn systems programming concepts while creating useful utilities.

Notes

Rust is a strategic learning investment for:

  • Systems programming skills

  • Memory-safe native code

  • High-performance CLI tools

  • WebAssembly development

  • Career diversification from Python

Current Projects

csv-viewer

A CSV file viewer CLI tool - first Rust project.

# Usage
csv-viewer data.csv
csv-viewer data.csv --columns name,age
csv-viewer data.csv --filter "age>30"

Learning Goals

Fundamentals

  • Ownership and borrowing

  • Lifetimes

  • Error handling (Result, Option)

  • Pattern matching

  • Traits and generics

Practical Skills

  • CLI tools with clap

  • File I/O

  • JSON/YAML parsing (serde)

  • HTTP clients (reqwest)

  • Async programming (tokio)

Advanced Topics

  • Unsafe Rust

  • FFI (calling C from Rust)

  • Macros

  • WebAssembly

Project Ideas

Project Description Status

csv-viewer

CSV file viewer with filtering

In Progress

netapi-rs

Rust rewrite of netapi core

Planned

vault-cli

Minimal Vault CLI in Rust

Planned

dns-checker

DNS lookup tool

Planned

cert-inspector

X.509 certificate analyzer

Planned

Resources

Books

  • The Rust Programming Language (The Book)

  • Rust by Example

  • Programming Rust (O’Reilly)

  • Zero To Production In Rust

Practice

  • Rustlings exercises

  • Exercism Rust track

  • Advent of Code in Rust

  • netapi - Python version (potential Rust rewrite target)

  • domus-cli - Another potential Rust rewrite

Metadata

Field Value

PRJ ID

PRJ-rust-learning

Author

Evan Rosado

Date Created

2026-03-25

Last Updated

2026-04-03

Status

Active (Learning)

Next Review

2026-04-15