About Me

Hello there, I am kxxt, a junior undergraduate from Shandong University (Weihai Campus).

I major in data science and AI at the School of Mathematics and Statistics. But I also always have a good passion for anything related to computers.

I am a native Chinese speaker but I also use English.

Tech Stacks

I learned to program in C/C++/C# when I was in junior and senior high school.

Specifically, I learned WinForms and Windows Presentation Foundation(WPF) to create useful desktop applications.

As I grew older, I learned

  • Python for Web Scrapers, Backend, Data Science, Computer Vision, AI and more.
  • HTML/CSS/JavaScript for doing frontend works.

I have some experience with React, Vue, Next.js and TypeScript. I have a lot of experience with Gatsby.js as you can see that my personal website is powered by Gatsby. By the way, I also uses SCSS to some extent. I have fallen in love with Rust since I learned it for the third time (I gave up twice due to its steep learning curve).

While attending university, I learned to use OpenCV, pytorch and numpy, etc. I also learned to write programs for Arduino-compatible boards. I learned R and Matlab for course purpose but I do not use them for my side projects so I might have forgotten some details and quirks of them.

I do have some experience with Java(solving algorithm problems) but I haven’t practiced it in any serious scenario. Now I even rarely use C# because I primarily use linux now.

I learned to write Thunderbird add-ons in JavaScript and Obsidian plugins in TypeScript.

I tried to learn Haskell but gave up. I learned F# but I haven’t practiced it much.

Other Skills

  • I have a good understanding of the Linux operating system and I have been using it as my primary operating system for more than 3 years.
  • I use Git for version control.
  • I use Docker to build and run containers and have basic knowledge of Kubernetes(But I haven’t practiced it).
  • I have some experience with Makefiles.
  • I am familiar with writing LaTeX equations inside Markdown files. But I do not have too much expertise in authoring LaTeX docs.
  • I have some experience with writing shell scripts but I am not good at it.
  • I have working knowledge and some very basic experience with packaging software for Arch Linux and Debian.

Software that I use

Here are some extraordinary applications that keep me happy and productive.

Operating Systems

  • Garuda Linux(Primary): Garuda Linux is a rolling distribution based on the Arch Linux operating system.
    • I use it for my daily work and it works perfectly.
  • Windows: Now I only use it for gaming and tasks that require Windows or when I want to use my laptop as a tablet PC.
  • Debian: I use it on my server due to its stability.
  • NixOS: I want to migrate my laptop to NixOS after NVIDIA reverse prime is supported on Linux.
  • LineageOS: I use it on my phone.

Browsers

  • Firefox: I use it as my primary browser.
  • Chrome: I use it for some websites that are not compatible with Firefox and for debugging purpose.

IDEs

  • Visual Studio Code: I use it for most of my projects.
  • Visual Studio: I use it for C# projects.
  • PyCharm: Sometimes I use it for Python projects.

Other Software

  • Obsidian: I use it to manage my notes and knowledge.
  • Thunderbird: I use it to manage my emails and calendars.
  • Typora: I use it to write markdown files.
  • Steam, Epic, Ubisoft: For gaming.
  • Zsh: I use it as my shell.
  • Slidev: I use it to write slides in Markdown.

My Hobbies

Except for programming, I also have some other hobbies. Here are some of them.

  • Gaming: I love Assassin’s Creed series.
  • Reading: I love reading books and blogs, here is my reading list.
  • Listening to light music and podcasts.
  • Riding my bike.

Open Source

I am a big fan of open source software and I have contributed to some projects and wrote some of my own.