Personal Data Manager (PDM)Jan 1, 2022Go to Project SiteCVYi YangMy research interests include end-to-end encrypted systems, encryption, and information security.PostsRust PDM Encryption RewriteI rewrote one of my c++ chacha20 implementations in rust today. Writing only the single-threaded core encryption parts took only one day without too much optimization. But I feel like rust doesn’t bring me the joy i get from writing c++ or golang.Yi YangFeb 12, 2025 2 min readProjectFrom Java to Golang, what have I learnedFrom Java to Golang, What Have I learned From few years ago, Java has always been my go-to language for backend development. I have been using Java for developing logic applications, and even Android applications.Dec 3, 2024 5 min readProjectLeetcode NotesLeetcode Notes 2507 - Smallest Value After Replacing With Sum of Prime Factors class Solution { public: int pf (int n) { int p = n; int out = 0; while (p % 2 == 0) { // p /= 2; out += 2 ; } int sqt = sqrt(p); for (int i =3 ;i<=sqt ;i+=2) { while (p%i == 0) { p = p/i; out += i; } } if (p>2) { out = out+p; } return out; } int smallestValue(int n) { int p = n; while (1) { int a = pf (p) ; std::cout<< "Output: "<< a <<std::endl; if (a == p){ return p; } else { p=a; } } } /** => 15 => 3 * 5 => 8 => 2 * 2 * 2 => 6 => 2 * 3 => 5 (is_prime ).Jun 22, 2024 1 min readProjectOne Billion Rows ChallengeSingle Threaded One Billion Rows Challenge This is a solution to the one billion rows challenge using a single thread in C++. Not optimized at all, but still faster than most multi-threaded solutions.Jun 21, 2024 2 min readProjectFilm Photos I TookPhotos I took with film cameras.Dec 28, 2023 1 min readProjectWhat Type of ServerKaTeX You can render LaTeX mathematical expressions using KaTeX: The Gamma function satisfying $\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$ is via the Euler integral $$ y_t = \beta_0 + \beta_1 x_t + \epsilon_t $$Sep 23, 2023 2 min readProject