BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//HasGeek//NONSGML Funnel//EN
DESCRIPTION:Rust India Conference 2026 hands-on workshop
X-WR-CALDESC:Rust India Conference 2026 hands-on workshop
NAME:Build a concurrent cache in Rust
X-WR-CALNAME:Build a concurrent cache in Rust
REFRESH-INTERVAL;VALUE=DURATION:PT12H
SUMMARY:Build a concurrent cache in Rust
TIMEZONE-ID:Asia/Kolkata
X-PUBLISHED-TTL:PT12H
X-WR-TIMEZONE:Asia/Kolkata
BEGIN:VEVENT
SUMMARY:Build a concurrent cache in Rust
DTSTART:20260417T043000Z
DTEND:20260417T120000Z
DTSTAMP:20260405T185232Z
UID:session/XFK9xBLx76rqiwEGQ5ro8x@hasgeek.com
SEQUENCE:19
CREATED:20260405T064221Z
DESCRIPTION:\n## 🧱 Workshop overview\nThis workshop teaches Rust throug
 h the hands-on evolution of a simple in-memory cache into a **concurrent\,
  type-safe system**.\n\nInstead of learning Rust concepts in isolation\, p
 articipants will incrementally build a real system and encounter core idea
 s - **ownership\, borrowing\, concurrency\, and type-driven design** - as 
 natural solutions to real problems.\n\nAlong the way\, we’ll explore how
  Rust:\n* Enables safe shared mutability\n* Eliminates classes of runtime 
 bugs\n* Uses the type system to make illegal states unrepresentable \n\nTh
 is workshop can be attended in-person in Bengaluru or remotely (live).\n\n
 ### Workshop level: suitable for beginners\n\n---\n\n## 🎯 Key takeaways
 \nBy the end of the workshop\, participants will:\n* Understand Rust’s o
 wnership and borrowing model through practice\n* Design APIs using Rust’
 s type system\n* Work with concurrency primitives: `Mutex`\, `RwLock`\, `A
 rc`\n* Understand interior mutability and atomics vs locks\n* Learn Rust
 ’s memory model and the MESI cache coherence protocol\n* Apply common Ru
 st patterns:\n\n  * Newtype\n  * RAII\n  * Interior Mutability\n  * Builde
 r\n  * Typestate\n\n---\n\n## About the instructor\nSarthak Makhija is Pri
 ncipal Architect at Caizin. He writes long-form essays on refactoring\, st
 orage engines\, databases\, and engineering trade-offs at https://tech-les
 sons.in/en/\n\n---\n\n## 👥 Who should attend\n* Engineers new to Rust l
 ooking for hands-on learning\n* Backend/systems engineers exploring Rust
 ’s concurrency model\n* Developers familiar with Go\, Java\, etc. wantin
 g to understand Rust’s design philosophy\n* Engineers interested in buil
 ding safe\, concurrent systems\n\n---\n\n## 📋 Prerequisites\n### Requir
 ed\n* Basic programming experience (any language)\n* Familiarity with func
 tions\, structs/classes\, and collections\n\n### Optional\n* Basic underst
 anding of concurrency (threads\, locks)\n* Exposure to systems programming
  concepts\n* Some familiarity with Rust\n\n---\n\n## 💻 Setup requiremen
 ts - install before the workshop\n* Latest stable Rust toolchain (`rustup`
 )\n* Verify installation:\n\n  ```bash\n  rustc --version\n  cargo --versi
 on\n  ```\n* A code editor\n* Git\n\n---\n\n## 🧩 Workshop structure\n\n
 ### Stage 1: Basic Cache\n* Build a simple cache using `HashMap<String\, S
 tring>`\n* Implement `get` and `put`\n* Understand ownership\, `String` vs
  `&str`\n\n**Focus:** Rust basics\, memory allocation\, ownership\n\n---\n
 \n### Stage 2: Type Safety with Newtypes\n* Introduce `Key` and `Value` ty
 pes\n* Prevent type-mixing errors\n\n**Focus:** Type safety\, zero-cost ab
 stractions\n\n---\n\n### Stage 3: Generics & Trait Bounds\n* Generalize to
  `Cache<K\, V>`\n* Introduce `Eq`\, `Hash`\, and `Borrow`\n\n**Focus:** Ge
 nerics\, trait bounds\, performance\n\n---\n\n### Stage 4: Mutability & AP
 I Design\n* Introduce `get_mut`\n* Use Entry API\n\n**Focus:** Borrow chec
 ker\, safe mutation\n\n---\n\n### Stage 5: Interior Mutability\n* Introduc
 e `RefCell`\n\n**Focus:** Interior mutability pattern\n\n---\n\n### Stage 
 6: Concurrency Begins (Mutex + RAII)\n* Add thread safety with `Mutex`\n* 
 Introduce RAII and `Send` / `Sync`\n\n**Focus:** Concurrency fundamentals\
 n\n---\n\n### Stage 7: Reducing Cloning (RwLock + Arc)\n* Introduce `Arc<V
 >` and `RwLock`\n\n**Focus:** Shared ownership\, performance trade-offs\n\
 n---\n\n### Stage 8: Lifetimes & API Abstraction\n* Introduce lifetimes in
  structs\n* Clean up API design\n\n**Focus:** Lifetimes\, abstraction trad
 e-offs\n\n---\n\n### Stage 9: Thread Safety Deep Dive\n* Validate correctn
 ess under concurrency\n\n**Focus:** Rust’s concurrency guarantees\n\n---
 \n\n### Stage 10: Sharding for Scalability\n* Implement sharded cache\n* R
 educe contention\n\n**Focus:** Systems design\n\n---\n\n### Stage 11: TTL 
 & background work\n* Add TTL and eviction\n* Introduce background threads\
 n\n**Focus:** Coordination across components\n\n---\n\n### Stage 12: Metri
 cs & atomics\n* Add metrics (hits\, misses)\n* Introduce atomics and memor
 y ordering\n\n**Focus:** Performance\, MESI protocol\n\n---\n\n### Stage 1
 3: Correctness via Typestate\n* Introduce typestate pattern\n\n**Focus:** 
 Compile-time correctness\n\n---\n\n### Stage 14: Finalization & API design
 \n* Add tests and Builder pattern\n* Final API walkthrough\n\n**Focus:** A
 PI ergonomics\, production trade-offs\n\n---\n\n## 📚 References\n* http
 s://doc.rust-lang.org/book/ (See chapters 4\, 5\, 10)\n* https://tech-less
 ons.in/en/blog/diving_into_rust/\n* https://tech-lessons.in/en/blog/design
 ing_lfu_cache/\n\n---\n\n## How to attend\nThis is a hybrid workshop — y
 ou can attend:\n* In-person in Bengaluru\, or\n* Remotely (live online)\n\
 nTo participate\, please purchase a workshop ticket for 17 April.\n\nNote:
 \n* Conference tickets do not include workshop access\n* A valid workshop 
 ticket is required for both in-person and remote participation\n* Seats (b
 oth in-person and remote) are limited\n\n---\n## Contact\n* Email: info@ha
 sgeek.com\n* Phone/WhatsApp: +91-7676332020\n* Questions: https://hasgeek.
 com/rustbangalore/build-a-concurrent-cache-in-rust-workshop/comments
LAST-MODIFIED:20260405T163529Z
LOCATION:Bengaluru & remote - https://hasgeek.com/rustbangalore/build-a-co
 ncurrent-cache-in-rust-workshop/
ORGANIZER;CN="Rust Bangalore":MAILTO:no-reply@hasgeek.com
URL:https://hasgeek.com/rustbangalore/build-a-concurrent-cache-in-rust-wor
 kshop/
BEGIN:VALARM
ACTION:display
DESCRIPTION:Build a concurrent cache in Rust in 5 minutes
TRIGGER:-PT5M
END:VALARM
END:VEVENT
END:VCALENDAR
