Skip to content

strivn/30DaysOfFLCode

Repository files navigation

30 Days of FL Code

Publicly committing to the hashtag#30DaysOfFLCode Challenge!

Two main rules:

  • Study Federated Learning (and/or any other PETs) for at least 1 hour/day for 30 days
  • Share Your Progress Daily by posting on social media using #30DaysOfFLCode and engage with other participants.

Discover more on www.30DaysOfFLCode.com.


Logs

(need to be cleaned up and updated)

First Week

  • Day 1: Introduction to Federated Learning Part 1
  • Day 2: Introduction to Federated Learning Part 2
  • Day 3: Casual Hackathon
  • Day 4: Introduction to Federated Learning Part 3
  • Day 5: SyftBox Apple Health Steps Counter Part 1 (POC)
  • Day 6: SyftBox Apple Health Steps Counter Part 2 (Member)
  • Day 7: SyftBox Apple Health Steps Counter Part 3 (Aggregator)

Second Week

Third Week

  • Day 15: Learning Homomorphic Encryption
  • Day 16: Learning Homomorphic Encryption
  • Day 17: Learning Homomorphic Encryption - Schemes
  • Day 18: Learning Homomorphic Encryption - Tenseal / Benchmarks
  • Day 19: Learning Homomorphic Encryption - Tenseal / Encrypted Convolution
  • Day 20: Learning Homomorphic Encryption - Context
  • Day 21: Revisiting Apple Health Steps Counter & Fixes

Fourth Week

  • Day 22: Revisiting Apple Health Steps Counter & Updates (but scrapped)
  • Day 23: Fully Homomorphic Encryption (FHE) Machine Learning using Concrete ML & Scikit Learn
  • Day 24: FHE Machine Learning using Concrete ML & Torch
  • Day 25: Private Set Intersection - Diffie Hellman and Paillier
  • Day 26: Private Set Interesction - OT and OPRF
  • Day 27: SMPC - Additive, Shamir's, and SPDZ
  • Day 28: FL Secure Aggregation

Fifth Week

  • Day 29: Confidential Computing
  • Day 30: Recap and Reflection - Structured Transparency