<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Today I learned on Hojae Lee</title><link>https://hojaeklee.github.io/til/</link><description>Recent content in Today I learned on Hojae Lee</description><generator>Hugo -- 0.160.1</generator><language>en</language><lastBuildDate>Sun, 18 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://hojaeklee.github.io/til/index.xml" rel="self" type="application/rss+xml"/><item><title>Using the ZSA keyboard</title><link>https://hojaeklee.github.io/til/20261018_zsa_keyboard/</link><pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/20261018_zsa_keyboard/</guid><description>&lt;p&gt;Okay, this might be a bit short because I&amp;rsquo;m still learning how to use the keyboard.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://pawelgrzybek.com/a-month-with-the-zsa-voyager-split-keyboard/" target="_blank" rel="noopener noreferrer"&gt;This post&lt;/a&gt;
summarizes the first and second day well. I was indeed also confused where the question mark was, haha. Great for touch typing, and indeed very ergonomic. The problem is coding. This is the customization I have done so far, to make it as similar to my existing Keychron as possible.&lt;/p&gt;</description></item><item><title>I made the dotfiles repo public!</title><link>https://hojaeklee.github.io/til/dotfiles/20261013_dotfiles/</link><pubDate>Tue, 13 Oct 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/dotfiles/20261013_dotfiles/</guid><description>&lt;p&gt;In the spirit of working in public, after &lt;a href="https://hojaeklee.github.io/til/dotfiles/20261003_zshrc/"&gt;Organizing my &lt;code&gt;~/.zshrc&lt;/code&gt; file&lt;/a&gt;
and &lt;a href="https://hojaeklee.github.io/til/dotfiles/20261010_chezmoi/"&gt;Syncing dotfiles between Mac and Linux with chezmoi&lt;/a&gt;
, I have finally made the &lt;a href="https://github.com/hojaeklee/dotfiles" target="_blank" rel="noopener noreferrer"&gt;dotfiles repo&lt;/a&gt;
public! 🎉&lt;/p&gt;</description></item><item><title>Syncing dotfiles between Mac and Linux with chezmoi</title><link>https://hojaeklee.github.io/til/dotfiles/20261010_chezmoi/</link><pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/dotfiles/20261010_chezmoi/</guid><description>&lt;p&gt;Today, as alluded in the &lt;a href="https://hojaeklee.github.io/til/dotfiles/20261003_zshrc/"&gt;Organizing my &lt;code&gt;~/.zshrc&lt;/code&gt; file&lt;/a&gt;
post, I got to revive my &lt;a href="https://www.chezmoi.io" target="_blank" rel="noopener noreferrer"&gt;chezmoi&lt;/a&gt;
usage. This was mostly because I finally set up my Arch Linux box with an NVIDIA RTX 3080 GPU that I could &lt;code&gt;ssh&lt;/code&gt; into from my Mac, and I wanted to sync my dotfiles between the two machines.&lt;/p&gt;</description></item><item><title>Hello, Rust!</title><link>https://hojaeklee.github.io/til/rust/20261006_hello_rust/</link><pubDate>Tue, 06 Oct 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/rust/20261006_hello_rust/</guid><description>&lt;p&gt;I&amp;rsquo;ve been seeing a lot of buzz around &lt;a href="https://rust-lang.org/" target="_blank" rel="noopener noreferrer"&gt;Rust&lt;/a&gt;
for a while and wanted to try it out. I&amp;rsquo;ve followed a few chapters in &lt;a href="https://doc.rust-lang.org/stable/book/title-page.html" target="_blank" rel="noopener noreferrer"&gt;The Rust Programming Language&lt;/a&gt;
, and it is &lt;em&gt;absolutely delightful&lt;/em&gt; to work with so far.&lt;/p&gt;</description></item><item><title>Organizing my `~/.zshrc` file</title><link>https://hojaeklee.github.io/til/dotfiles/20261003_zshrc/</link><pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/dotfiles/20261003_zshrc/</guid><description>&lt;p&gt;I feel like organizing &lt;code&gt;~/.zshrc&lt;/code&gt; file is the digital equivalent of organizing your drawer. After a while, you realized you gathered some weird pins, coins, and utensils you never use. Or in the case of &lt;code&gt;~/.zshrc&lt;/code&gt;, you find weird aliases, exporting PATH all over the place, API tokens (don&amp;rsquo;t do this), etc. They are also not the most urgent things to clean, but once in a while it feels good to take everything out and put them back in. 😅&lt;/p&gt;</description></item><item><title>AI and Thoughtfulness</title><link>https://hojaeklee.github.io/til/ai/20260929_ai_and_thoughtfulness/</link><pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/ai/20260929_ai_and_thoughtfulness/</guid><description>&lt;p&gt;With the advancements of LLMs, there are more and more vibe-coded or AI-assisted programs and apps coming out. On occasions, I browse &amp;ldquo;Show HN&amp;rdquo; of Hacker News, where developers and non-developers alike share something they created online. There seems to be a distinct trend where some people would not even try the software if the landing page looks even remotely AI-generated, regardless of whether the actual underlying software was good or not.&lt;/p&gt;</description></item><item><title>The Normalizations I wanted to look into</title><link>https://hojaeklee.github.io/til/deep_learning/20260928_normalizations/</link><pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/deep_learning/20260928_normalizations/</guid><description>&lt;p&gt;After my &lt;a href="https://hojaeklee.github.io/til/deep_learning/20260927_swish_and_swiglu/"&gt;Swish and SwiGLU&lt;/a&gt;
adventure, I wanted to do another set of chronological reading, this time on normalization techniques. Much like the activation functions, these are very commonplace in deep learning architecture, but beyond BatchNorm I hadn&amp;rsquo;t sat down to read these as a group to parse out the use cases and the limitations that subsequent techniques answer.&lt;/p&gt;</description></item><item><title>Swish and SwiGLU</title><link>https://hojaeklee.github.io/til/deep_learning/20260927_swish_and_swiglu/</link><pubDate>Sun, 27 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/deep_learning/20260927_swish_and_swiglu/</guid><description>&lt;p&gt;Yesterday I had the joy of randomly reading papers that introduced &lt;a href="https://www.alphaxiv.org/abs/1710.05941" target="_blank" rel="noopener noreferrer"&gt;Swish&lt;/a&gt;
and &lt;a href=""&gt;SwiGLU&lt;/a&gt;
. Recently, I decided I wanted to update my knowledge of deep learning from around 2020, when I pivoted slightly more towards generative models (diffusion and GANs) and neuroscience to complete my PhD. I knew there were a lot of exciting things coming out that I&amp;rsquo;ve heard of, but haven&amp;rsquo;t had a chance to sit down and read.&lt;/p&gt;</description></item><item><title>Playing with `vim-surround`</title><link>https://hojaeklee.github.io/til/vim/20260927_vim-surround/</link><pubDate>Sat, 26 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/vim/20260927_vim-surround/</guid><description>&lt;p&gt;Somehow, coming across an IDE called &lt;a href="https://helix-editor.com/" target="_blank" rel="noopener noreferrer"&gt;Helix&lt;/a&gt;
has made me want to explore more Vim again.&lt;/p&gt;
&lt;p&gt;I do have Vim enabled in many of the apps that I use, namely:&lt;/p&gt;</description></item><item><title>Playing with VisPy</title><link>https://hojaeklee.github.io/til/vispy/20260925_playing_with_vispy/</link><pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/vispy/20260925_playing_with_vispy/</guid><description>&lt;p&gt;I somehow came across this beautiful visualization of &lt;a href="https://blog.shashanktomar.com/posts/strange-attractors" target="_blank" rel="noopener noreferrer"&gt;strange attractors&lt;/a&gt;
written in Three.js. Then I remembered &lt;a href="https://vispy.org/index.html" target="_blank" rel="noopener noreferrer"&gt;VisPy&lt;/a&gt;
, a scientific visualization package in Python that I heard of in context of &lt;a href="https://vedo.embl.es/" target="_blank" rel="noopener noreferrer"&gt;Vedo&lt;/a&gt;
. We use Vedo for visualization at the &lt;a href="https://thousandbrains.org/" target="_blank" rel="noopener noreferrer"&gt;Thousand Brains Project&lt;/a&gt;
, so I decided to poke around the VisPy API and write some code without using LLM.&lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;</description></item><item><title>Workspace Launcher in Raycast</title><link>https://hojaeklee.github.io/til/raycast/raycast-window-management/</link><pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate><guid>https://hojaeklee.github.io/til/raycast/raycast-window-management/</guid><description>&lt;p&gt;I asked ChatGPT today apps for Workspace Launchers, and suggested creating a &lt;a href="https://manual.raycast.com/window-management#create-layout" target="_blank" rel="noopener noreferrer"&gt;custom Layout in Raycast&lt;/a&gt;
. It also suggested other apps like &lt;a href="https://bunchapp.co/" target="_blank" rel="noopener noreferrer"&gt;Bunch&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;For those who are not familiar with Workspace Launchers: I think of it as a Shortcut to open pre-specified apps, e.g. a &amp;ldquo;Work&amp;rdquo; Layout may open an IDE, Slack, GitHub, etc.&lt;/p&gt;</description></item></channel></rss>